2012-05-02 42 views
8

Tôi có một mẫu mã:addAttr không hoạt động trong jquery?

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

Và jquery

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

Khi tôi thay đổi giá trị trong hộp văn bản được kết quả value="" và lỗi trong firebug $("#color").addAttr is not a function

Làm thế nào để sửa chữa nó?

Trả lời

31

Được gọi là .attr(), không phải .addAttr().

Bạn cũng nên thay thế của bạn bên trong $('#color') với $(this) để chỉ ra rằng bạn đang thao tác đầu vào tương tự mà đang được thay đổi:

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

Bạn cũng có thể làm:

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

Bạn đang bối rối về removeAttr() và bạn nghĩ rằng addAttr() tồn tại, sai.

Hàm bạn muốn là .attr()

Các vấn đề liên quan