2012-05-02 15 views
8

Ho un Codice di esempio:addAttr non funziona in jquery?

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

e jQuery

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

Quando cambio valore nella casella di testo è risultato value="" ed errori in Firebug $("#color").addAttr is not a function

come risolvere il problema?

risposta

31

Si chiama .attr(), non .addAttr().

Si dovrebbe anche sostituire il vostro interno $('#color') con $(this) per indicare che si sta manipolando lo stesso ingresso che viene cambiato:

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

Si potrebbe anche fare:

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

si sono confusi su removeAttr() e pensi che addAttr() esista, che è sbagliato.

La funzione desiderata è .attr()