2017-09-09 11 views
0

同じ名前と角括弧(オブジェクト[])を持つ表の行に配列された多数のドロップダウン(数十など)投稿時に値を配列として持つことができます。複数の選択肢からどのドロップダウンが変更されたかを特定する方法

<tr 1> 
    <select name="objects[]"> 
    <option value='Choice 1'>Choice 1</option> 
    <option value='Choice 2'>Choice 2</option> 

    </select> 
</tr> 

<tr 2> 
    <select name="objects[]"> 
    <option value='Choice 1'>Choice 1</option> 
    <option value='Choice 2'>Choice 2</option> 

    </select> 
</tr> 

質問 私はそれが一意にドロップダウンのこのセットから変更されたドロップダウンの値を識別することが可能であるjqueryの/ JSを使用して、ドロップダウンの値を変更しますか?すなわちドロップダウンのインデックスを取得する。

ユースケースは、同じ行の変更されたドロップダウンの隣にテキストフィールドを挿入するもので、[]と同じ名前を共有するものです。正しい場所。

ありがとうございました。

答えて

0

要素のインデックスを取得する必要はありません、我々は.on()機能を使用して変更を監視することができ、我々は、我々が.val()を使用して値を取得し、隣接inputに同じに設定し、すべてのselect要素に添付します我々は.next機能を使用して見つける。

//optional code - for initalization 
 
$('select').each(function(){ 
 
    $(this).next("input").val($(this).val()); 
 
}); 
 
//optional code - for initalization 
 

 
$('select').on("change", function(){ 
 
$(this).next("input").val($(this).val()); 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<tr 1> 
 
    <select name="objects[]"> 
 
    <option value='Choice 1'>Choice 1</option> 
 
    <option value='Choice 2'>Choice 2</option> 
 

 
    </select> 
 
    <input type="text"/> 
 
</tr> 
 

 
<tr 2> 
 
    <select name="objects[]"> 
 
    <option value='Choice 1'>Choice 1</option> 
 
    <option value='Choice 2'>Choice 2</option> 
 

 
    </select> 
 
    <input type="text"/> 
 
</tr>

関連する問題