1

可能なオプションのグループに基づいて状態プロパティを変更するために、jQueryを介して次の入力名にアクセスしようとしています。マークアップは次のとおりです。

<input name="extra[00]" id="extra[00]" type="text" class="optional-field extra " value="" disabled="disabled">
<input name="extra[01]" id="extra[01]" type="text" class="optional-field extra " value="" disabled="disabled">
<input name="extra[02]" id="extra[02]" type="text" class="optional-field extra " value="" disabled="disabled">
<input name="extra[20]" id="extra[20]" type="text" class="optional-field extra " value="" disabled="disabled">
<input name="extra[21]" id="extra[21]" type="text" class="optional-field extra " value="" disabled="disabled">
<input name="extra[30]" id="extra[30]" type="text" class="optional-field extra " value="" disabled="disabled">

name = "extra [XX]"の最初の桁はグループを示しているため、繰り返される場合があり、2番目の桁は順序を設定します。私はこれを試していましたが、2番目の可能な要素を取得する方法を見つけることができません:

var id = jQuery(this).val(); // Changes from a drop-down
var extra = jQuery('input[name="extra[' + id + ']"]');

たとえば、id = 2(jQuery('input[name="extra[2*]"]'))によって、DOMの開始時に「余分な」要素がいくつあるかを数えることは可能ですか?

助けてくれてありがとう。

4

2 に答える 2

2

これを試して

$('input[name^="extra\\[2"]').length

[\\でエスケープする必要があります

これにより、で始まる入力要素の長さがわかりますname="extra[2"

^attribute starts with selectorです。

フィドルをチェック

于 2012-11-21T18:40:03.343 に答える
1

を使用$("#container input[name=^extra]");して、で始まるすべての要素を選択できますextra。次に、そのリストの要素の数を数えます。:)

于 2012-11-21T18:43:06.593 に答える