2011-12-16 159 views
0

我有3个下拉菜单(组合框)或在页面上选择列表。它目前给我的价值来自第一个下拉框。 我正在寻找一种方法来知道从页面上的多个下拉菜单中选择哪个下拉菜单?

  1. 哪个下拉的值被选中并提交了值?
  2. 禁用另外两个下拉菜单,以便只选择1个值?

我使用jQuery使用jQuery的这个

var id = $("select option:selected").attr("value"); 

任何建议,以实现1来检查值和上述2?

此处演示http://jsfiddle.net/rd2K4/1/ 谢谢。

+0

您有三个组合框,每个组合框都有一个空选项,表示用户没有从该列表中做出选择。是对的吗?你关心哪个选择选择了非空选项?那是对的吗? [编辑:去除misinfo about:selected] – smendola 2011-12-16 18:18:29

+0

嗯,下面的解决方案做了我想要的大部分。谢谢 – pal4life 2011-12-16 18:22:42

回答

1

如果我正确理解你的问题,以下应该工作。它处理所有选择元素的更改事件。当一个改变,它禁止他人和选择的值存储到一个变量selectedValue

$(function() { 
    var selects = $("select"); 
    selects.on("change", function() { 
     var $this = $(this); 
     var selectedValue = $this.val(); 
     selects.not($this).attr("disabled", "disabled"); 

     // do something with the selectedValue here ... 
    }); 
}); 

注:使用的.on()需要jQuery的1.7+

演示链接可以在这里找到:http://jsfiddle.net/QnKGu/