2016-06-29 15 views
0

したがって、私はドキュメント上にキー値のペアのグループを持っています。それらは2つの入力のセットです。私はまた、非ペアを拒否する必要がありますので、キーまたは値だけがある場合、私はこれらの辺のいずれかを含めたくありません。このようタグのグループからキー値ペアを取得するにはどうすればよいですか?

、INPUT1が鍵となり、INPUT2が値である:

<div id = "group_o_inputs"> 
    <div class="ind_form"> 
     <input class="input1" type="text"><input class="input2" type="text"> 
    </div> 
    <div class="ind_form"> 
     <input class="input1" type="text"><input class="input2" type="text"> 
    </div> 
    <div class="ind_form"> 
     <input class="input1" type="text"><input class="input2" type="text"> 
    </div> 
</div> 

私はこれらを抽出できるか、私はJSON配列にそれらを置くことを考えています。私はこのような構文を考えています:

  var items1 = $("#group_o_inputs .ind_form .input1"); 
      var items2 = $("#group_o_inputs .ind_form .input2"); 

私はforループなどで2つの配列を使うことができますか?そして私が言及したように、ユーザは偶然に一つの入力を残すことができるので、それを考慮したい。

{ 
key: value, key: value, key: value, key: value 
} 

答えて

3

反復ind_formクラスをし、オブジェクト

の配列
var data = $('.ind_form').has('.input1,.input2').map(function(){ 
    return { 
     key : $(this).find('.input1').val(), 
     value : $(this).find('.input2').val() 
    } 
}).get(); 

が、私は本当にそれが{ `言いたくない

[ 
    {key: 'input1-1 value', value : 'input2-1 value'}, 
    {key: 'input1-2 value', value : 'input2-2 value'} 
] 
+0

を生成マップ:最終的には、このように出てくるだろうキー: 'input1-1 value'、値: 'input2-1 value'}、 {key: 'input1-2 value'、value: 'input2-2 value'} '。 '{ key:value、key:value、key:value、key:value }' – munchschair

+0

Ok ...同様のループを行い、 'each'を使って新しいキーと値を1つに追加しますオブジェクト。これが実行される前に重複を確認していますか? – charlietfl

関連する問題