12

jquery を使用して、同じ名前の属性を持つすべてのテキスト ボックスの値を取得する必要があります。

<input type="text" id="text1" name="text[]">
<input type="text" id="text2" name="text[]">
<input type="text" id="text3" name="text[]">

textbox text[]のすべての値を取得し、jquery を使用して比較するにはどうすればよいですか。

使ってみた

 var values = $("input[name='text[]']")
 .map(function(){return $(this).val();}).get();

しかし成功していません。

4

5 に答える 5

21

メソッドを使用mapして、値を配列に格納できます。

$(function(){
   var values = $('input[name="text[]"]').map(function(){
       return this.value
   }).get()
})

http://jsfiddle.net/UugWW/

于 2012-12-17T15:10:20.847 に答える
2

これはうまくいくはずです:

$('input[name="text[]"]');

ループしてすべての値を取得できます。

$('input[name="text[]"]').each(function() {
    alert($(this).val());
});
于 2012-12-17T15:09:58.863 に答える
2

要件をより小さな問題に分割してみましょう。

まず、これらすべての入力を選択します。

var $inputs = $("input[name='text[]']")

という名前のすべての入力を含む jQuery オブジェクトを返しますtext[]。また、名前に角括弧を使用する必要がない場合もあります。

var inputs = $inputs.get();

Array.prototype.mapなどの Array のプロトタイプ メソッドにアクセスできるように、一致する要素をプレーンな Array に抽出します。

var values = inputs.map(function takeValue(input) {
    return input.value;
});
于 2012-12-17T15:14:34.740 に答える
1

次のようなセレクターを使用します。

$('input[type="text"][name="text[]"')
于 2012-12-17T15:10:35.860 に答える