繁体   English   中英

如何确定与多个数组名称相同的选择中更改了哪个下拉列表

[英]How to determine which drop-down is changed from a number of selects sharing same name as an array

我在表中的行中有许多下拉列表(如数十个),它们具有相同的名称和方括号(objects []),以便在发布时可以将它们的值作为数组使用。

<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唯一标识从该组下拉列表中更改哪个下拉列表的值? 即获取下拉列表的索引。

用例是在同一行中的更改后的下拉列表旁边填充一个文本字段,由于它们都使用[]共享相同的名称,因此我想确定在正确的位置更改了哪个字段以更新文本字段。

谢谢。

无需获取元素的索引,我们可以使用.on()函数监视更改,将其附加到所有select元素,然后使用.val()获取值并将其设置为我们使用.next函数找到相邻input

 //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> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM