如何获取从下拉列表中选择的最后一个值并使用 jquery 禁用它
How to get the last value selected from dropdown and disable it using jquery
>我有两个下拉列表,我想禁用从下拉列表中选择的最后一个值,并在其他下拉列表中启用上一个值。
假设我有两个下拉列表,如下所示:
<select name="g1" id="box_g1">
<option value="Select">Select</option>
<option value="one">one</option>
<option value="two">two</option>
<option value="three">three</option>
</select>
<select name="g2" id="box_g2">
<option value="Select">Select</option>
<option value="one">one</option>
<option value="two">two</option>
<option value="three">three</option>
</select>
如果我从box_g1中选择选项:"一",然后再次从box_g1中选择"二"(即从同一个框中)。 那么在下一个下拉列表中只应禁用最后一个值"two"。检查下面的小提琴:
JS小提琴
任何帮助,不胜感激。
可以尝试如下操作
<script type="text/javascript">
var g1 = [],
g2 = [];
$('#box_g1 option').each(function(){g1.push($(this).val());});
$('#box_g2 option').each(function(){g2.push($(this).val());});
$('#box_g1').on('change', function(){
var options = '',
selected = $('#box_g1').val();
for(var i = 0; i < g2.length; i++){
if(selected != g1[i] && selected != 'Select'){
options += ('<option value="'+g2[i]+'">'+g2[i]+'</option>');
}
}
$('#box_g2').empty().html(options);
});
</script>
您可以存储从第一个框中选择的最后一个项目的值,然后循环访问第二个框并将这些值与存储的值进行比较,禁用所有匹配的值。
相关文章:
- Jquery append oly获取循环Rails中的最后一个elemen
- Javascript/jQuery替换tamil语言输入框中的最后一个单词
- jQuery/Javascript>on单击将文本放置在最后一个已知的光标位置
- jQuery:在for循环中运行youtube视频,播放最后一个视频
- 如何使用JQuery提取URL中最后一个/分隔符之前的最后一个值
- 为什么jQuery正在删除文本的最后一个字符
- 检查 JQuery 每个函数中的最后一个元素
- jQuery UI Slider ui.value 获取最后一个数字
- jQuery - 选择具有相同 ID 的组的最后一个元素
- 使用 jQuery 在最后一个图像之后附加 HTML
- jquery p:最后一个子项不工作
- jQuery自定义验证只显示最后一个字段的错误
- Jquery将最后一个输出作为值
- 除了最后一个<td>元素-Jquery
- jQuery使用最后一个参数在Javascript循环中单击绑定函数
- 对jQuery UI可排序表应用包含可以防止将高行移动到最后一个位置
- 如何在jquery中读取Section中的最后一个元素
- 设置'字体大小'jQuery不处理所选Text的最后一个元素
- 使jQuery图像滑块停止在最后一个图像,并添加下一个和上一个按钮
- 插入字符之前的第6个字符从最后一个Jquery