2
<div class="form-group">
    <label class="control-label" for="test1"></label>
    <input type="text" name="test1" class="form-control test1" id="test1" placeholder="" width="200">
</div>

div のクラスを追加するには、<div class="form-group">コードを使用します。

var FindName = arr[i].name; //test1

$("input[name=FindName]").parent().removeClass("test").addClass("test2");

しかし、コードは機能していません。私のコードのどこにエラーがあるのか​​教えてください。

4

6 に答える 6

2

input[name=FindName]name属性が文字通り stringである要素に一致しますFindName。変数を使用する場合はFindName、新しいセレクターを作成します。

$('input[name="' + FindName + '"]')

または、ネイティブ DOM メソッドをラップします。

$(document.getElementsByName(FindName))
于 2013-09-11T21:01:47.360 に答える
1

変数の連結を修正します。変数の場合FindNameは、セレクターに連結する必要があります。

これを試して:

$("input[name='"+FindName+"']").parent().removeClass("test").addClass("test2");
于 2013-09-11T21:01:22.810 に答える
0

文字列の連結:

var FindName = 'test1';

$("input[name='"+FindName+"']").parent().removeClass("test").addClass("test2");

一方、次の理由だけではありません。

$('#'+findName).closest('div').removeClass("test").addClass("test2");
于 2013-09-11T21:01:27.857 に答える
0

変数FindNameを定数文字列として使用しているため、次のように変更してみてください。

$("input[name='"+FindName+"']").parent().removeClass("test").addClass("test2");
于 2013-09-11T21:01:50.713 に答える
0

入力タグを正しく選択していません。入力タグの名前は「test1」に設定されています

$("input[name="+ FindName +"]").parent().removeClass("test").addClass("test2");
于 2013-09-11T21:02:08.450 に答える