我有许多下拉列表(如数十个)在表格中排列在具有相同名称和方括号(对象[])的表中,以便我在张贴时可以将其值作为数组。
<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()
和将相同的设置为相邻的input
,我们使用.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>