27

サンプルコードがあります:

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

そしてjquery

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

テキストボックスの値を変更すると、firebugの結果value=""とエラーが発生します$("#color").addAttr is not a function

それを修正する方法?

4

3 に答える 3

53

.attr()ではなくと呼ばれてい.addAttr()ます。

また、変更されているのと同じ入力を操作していることを示すために、インナー$('#color')を次のように置き換える必要があります。$(this)

$('#color').change(function(){
    $(this).attr('value', 'test');
});
于 2012-05-02T04:17:44.893 に答える
17

あなたは混乱していて、それが存在するremoveAttr()と思います、それは間違っています。addAttr()

あなたが望む機能は.attr()-今日では.prop()、私は信じています。

于 2012-05-02T04:21:50.587 に答える
5

次のこともできます。

$('#color').change(function(){
    $(this).val('test');
});
于 2012-05-02T04:21:00.527 に答える