我有三个下拉选择列表,当选择一个列表中的值时,我希望其他两个列表变为灰色并且处于非活动状态。我在每个我正在尝试的选择列表周围都有一些id包装,但是因为我对jquery很陌生,所以我并没有走得太远。jquery - 三个选择列表,如果选择了一个值,则禁用另外两个列表
2
A
回答
4
像这样的东西应该工作:
$(function() {
var $selects = $('#select1, #select2, #select3');
$selects.change(function() {
// disabled the other two
$selects.not(this).attr('disabled', 'disabled');
});
});
更新版本:
$(function() {
var $selects = $('#select1, #select2, #select3');
$selects.change(function() {
// disable or enable the other two
$selects.not(this).attr('disabled', $(this).val() === '' ? '' : 'disabled');
});
});
0
你可以做这样的事情:
$('#wrappers').change(function(){
$('#select1').attr('disabled', true);
$('#select2').attr('disabled', true);
});
哪里wrappers
是,当你选择一个值另外两个获得残疾id为select1
和select2
例如分别从中选择元素的ID:
<select id="wrappers">.........
<select id="select1">.........
<select id="select2">.........
0
我假设你有三个,如果任何三个是塞莱另外两个应该禁用。
function toggleOthers(x) {
var select = new Array('#wrapper1','#wrapper2','#wrapper3');
for (int i = 0; i < select.length; i++)
if ($(x).attr('id')!=select[i])
$(x).attr('disabled','disable');
}
HTML: <select onchange='toggleOthers(this);' id='wrapper1'> etc...
0
如果你有选择用一个div包装带#wrapp的ID Ε
$('#wrapper select').each(function(i,select){
$(select).change(function(){
$(this).attr('class','enabled').siblings().attr('class','disabled');
})
})
相关问题
- 1. 根据另一个选择列表值选择选择列表值
- 2. 选择基于另一个表的值从另一个表列
- 3. 两个选择与表列
- 4. Jquery:克隆选择列表并选择一个选项的值
- 5. 如果值从另一个表中选择,则更新表
- 6. 如果值是另一个表,然后选择特定的列
- 7. JQuery - 选择除最后一个列表以外的所有列表(从多个列表中选择)。
- 8. 从列空选择另一个选择
- 9. jquery禁用选项,如果我们在另一个选择中选择了这个选项
- 10. 如果选择1st或2nr,则禁用第3个,第4个下拉列表
- 11. 使用Javascript从多个选择选择列表中选择值
- 12. 自动选择选项,如果只有一个在选择列表中 - jQuery
- 13. 基于第一个选择列表过滤第二个选择列表
- 14. 从一个选择列表/列表框到另一个jQuery的方式
- 15. jquery删除条目选择下拉列表,如果在另一个下拉列表中选择
- 16. 选择器以选择第三个列表项目?
- 17. 如果选择了选项,禁用列表
- 18. 如何实现多个选择列表并存储在jQuery中的另一个选择列表中?
- 19. 从另一个表中选择列,并创建一个列
- 20. 如果表不存在,则在另一个表上选择
- 21. 发送选择下拉列表到另一个选择下拉列表
- 22. jQuery选择一个额外的散列
- 23. Javascript来选择多个选择列表
- 24. 通过另一个表列值选择列
- 25. 从两个连接的表中选择一个表中的一列由另一个表中的两个引用
- 26. 如何在选择某个选择列表值时禁用输入字段
- 27. jQuery如果选择,创建一个基于选择的下拉列表
- 28. 如何在值为动态时基于第一个选择列表选项更改第二个选择列表?
- 29. 从两个表中选择一个表
- 30. 根据从另一个表中选择的结果从一个表中选择
这是非常优雅,容易理解。每个下拉列表都有一个“无选择”选项。这里的价值就是“”。如果您希望其他字段在选择“无选择”时再次激活,您将如何编写它? – Toxid 2010-08-10 23:10:11
添加了一个更新版本,该版本应该启用或禁用其他两个版本,具体取决于触发更改事件的select的当前值。感谢你的接纳! – jmar777 2010-08-10 23:22:03
简直太棒了!你有一个太多=但是,应该是.val()==。我认为这是一个错字。 – Toxid 2010-08-10 23:25:50