Изменение значения ввода jQuery
Я не могу найти правильный селектор для:
<input maxlength="6" size="6" id="colorpickerField1" name="sitebg" value="#EEEEEE" type="text">
Я хочу изменить значение на = 000000. Мне нужен селектор, чтобы найти "имя", а не идентификатор ввода текста.
Разве это не работает?:
$("text.sitebg").val("000000");
Представленное решение не работает, что проблема с этим?
$.getJSON("http://www.mysitehere.org/wp-content/themes/ctr-theme/update_genform.php",function(data) {
$("#form1").append(data.sitebg);
$('input.sitebg').val('000000');
});
Данные JSON работают правильно; идея состоит в том, чтобы позже передать значения JSON в текстовые значения ввода формы. Но не работает: (
Ответы
Ответ 1
нет, вам нужно сделать что-то вроде:
$('input.sitebg').val('000000');
но вы действительно должны использовать уникальные идентификаторы, если сможете.
Вы также можете уточнить, например:
$('input[type=text].sitebg').val('000000');
EDIT:
сделайте это, чтобы найти свой вход на основе атрибута name:
$('input[name=sitebg]').val('000000');
Ответ 2
Лучшая практика заключается в непосредственном использовании идентификатора:
$('#id').val('xxx');
Ответ 3
jQuery способ изменения значения в текстовом поле ввода:
$('#colorpickerField1').attr('value', '#000000')
это изменит атрибут value
для элемента DOM с идентификатором #colorpickerField1
от #EEEEEE
до #000000
Ответ 4
Когда вы устанавливаете новое значение элемента, вам нужно изменить триггер вызова.
$('element').val(newValue).trigger('change');
Ответ 5
Просто добавив ответ Джейсона, селектор .
предназначен только для классов. Если вы хотите выбрать что-то, отличное от элемента, id или класса, вам нужно заключить его в квадратные скобки.
например.
$('element[attr=val]')