AddAttr не работает в jquery?

У меня есть пример кода:

<input type="text" name="color" id="color" value="" />

И jquery

$('#color').change(function(){
    $('#color').addAttr('value', 'test');
});

Когда я меняю значение в текстовом поле, получается результат value="" и ошибка в firebug $("#color").addAttr is not a function

Как это исправить?

Ответ 1

Он называется .attr(), а не .addAttr().

Вы также должны заменить свой внутренний $('#color') на $(this), чтобы указать, что вы управляете тем же вводом, который изменяется:

$('#color').change(function(){
    $(this).attr('value', 'test');
});

Ответ 2

Вы не уверены в том, что removeAttr() и вы думаете, что addAttr() существует, что неправильно.

Я считаю, что вам нужна функция .attr() - в настоящее время .prop().

Ответ 3

Вы также можете сделать:

$('#color').change(function(){
    $(this).val('test');
});