在jquery中的下拉列表中选择特定选项

时间:2013-03-28 21:48:12

标签: jquery

我试图制作这个小脚本,你只能在一系列下拉框中使用一次数字,所以.. [1] [3] [2] [2] [3] [1] [2] [1] [3] 一切都很好但不是 [2] [2] [1] [1] [1] [3] ..

我想我已经完成了一半。

$("#left").focus(function () {
    // Store the current value on focus, before it changes
    previous = this.value;
}).change(function() {
    // Do soomething with the previous value after the change
    var num1 = $("#left option:selected").text();

    if ( $("#middle option:selected").text() == num1){
    $("#middle option:selected").text(previous)
    }

    if ( $("#right option:selected").text() == num1){
    $("#right option:selected").text(previous)
    }       
});

以下是完整内容的链接:http://jsfiddle.net/U3WSz/

它的工作有点但我意识到下拉选项开始改变。如果你玩够了,你会注意到我所看到的。

我还注意到我重复了很多代码。如果有更好的方式来写它,请告诉我。

1 个答案:

答案 0 :(得分:0)

试试这个

$("#left").focus(function () {
    // Store the current value on focus, before it changes
    previous = this.value;
}).change(function() {
    // Do soomething with the previous value after the change
    var num1 = $("#left option:selected").text();

    if ( $("#middle option:selected").text() == num1){
    $("#middle option[value='"+previous+"']").attr('selected','selected')
    }

    if ( $("#right option:selected").text() == num1){
    $("#right option[value='"+previous+"']").attr('selected','selected')
    }       
});

此代码在#middle#right选择框中选择了value等于previous变量值的选项。