2016-03-19 11 views
-2

要素を見つけることは、とりわけインデックスされたものを更新することです。私はjquery内の特定のチェックボックスをネストすることなく更新(チェック)する方法はありますか?

$("input").prop("checked", true); 

ですべてのチェックボックスを選択するためにjqueryのを使用することができ、そのような

<html> 
<head> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> 
</head> 
<body> 
Test!!!!! 
<input name='cars' type='checkbox' value="primary" checked/> 
<input name='cars' type='checkbox' value="secondary"/> 
<input name='cars' type='checkbox' value="tertiary"/> 
</body> 
</html> 

として3つのチェックボックスのグループのための基本的なHTMLを考えると

はしかし、どのように私は、次のような一つだけのチェックボックスをターゲットにすることができます中央のもの?

私は

$("input")[1].prop("checked", true); 

を試してみました。しかし、私は変更せずにprop is not a function

$("input")[1].prop("checked", true);戻り、[]を取得します。

入れ子にされた検索オプションの1つが見つかりました。

$($("input")[1]).prop("checked", true); 

よりクリーンな方法がありますか?

答えて

1

あなたは括弧表記を使用している場合、それはプレーンなノードオブジェクトを返します

$("input").eq(1).prop("checked", true); 

、この文脈で.eq(index)を使用する必要があります。そして、そのプロトタイプに.prop()という機能はありません。だから、動作しません、エラーが発生します。

そしてこのネストは$($("input")[1]).prop("checked", true);です。 $(nodeObject)はjqueryオブジェクトに変換されるので、その上でprop()のようなjquery関数にアクセスすることができます。 "input"セレクタの

+0

を使用することができ、これは動作します。 –

0

ただ、一つの選択肢は、最初のインスタンスに対して.checked = falseを使用していることがわかった([1])、すなわち

$("input")[1].checked = false; 
1

あなたはnth-of-typeセレクタ確認

$("input:nth-of-type(2)").prop("checked", true); 
+0

はい、これも機能しました。 –

関連する問題