2012-02-12 12 views
20

IDの割り当てをせずにjQueryでこのような名前付き入力を適切に選択するにはどうすればよいですか?Javascriptの名前の配列の入力セレクタ(名前[sometext])

<input name="person[first]" type="hidden"> 
<input name="person[last]" type="hidden"> 

// Seems to be acting on multiple hidden elements instead of this named one 
// This sets the value of both of those hidden elements in some cases 
$("input[type=hidden][name=person[first]]").val('Test'); 

// So I've changed it to this. Is there a better way? 
$("input[name=person[first]]").val('Test'); 
+0

HTMLを含む複数の非表示の入力要素がある場合に、何がうまくいかないかの例を挙げることができますか?あなたの例からは明らかではありません。 – Anurag

答えて

28

... the docs for attribute-equals-selectorから

$("input[type=hidden][name='person[first]']").val(); 
    // ---------------------^-------------^ 

を引用符で囲まれた属性値を入れて...

属性属性名:このように。

属性値。引用符で囲まれていない単一の単語でも、引用符で囲まれた文字列でもかまいません。

単語が1つ以上あるので、引用符で囲む必要があります。

3

CSSで意味を持つシンボルを含む属性セレクタの値を引用符で囲むことになっていると思います。

input[type=hidden][name='person[first]'] 
関連する問題