切换两个选择菜单之间的选择

时间:2012-01-24 14:28:47

标签: javascript jquery

我正在尝试构建某种货币转换器,我有两个带有货币列表的选择菜单。 我想创建一个按钮,单击该按钮时,它将在“从”选择菜单和“到”选择菜单之间切换选择。 如何使用我已有的选择菜单实现它?

4 个答案:

答案 0 :(得分:0)

这样的东西?

$("#button").on("click", function() {
    var from = $("#from").val();
    var to = $("#to").val();
    $("#from").val(to);
    $("#to").val(from);
});

我真的用更少的代码来做这件事,但为了便于阅读,我已经这样做了。

答案 1 :(得分:0)

假设我已经正确理解了您,您需要一个可以交换两个select元素值的按钮。如果那是对的,请尝试以下几点:

$("#someButton").click(function() {
    var elemTo = $("#to"),
        elemFrom = $("#from"),
        toVal = elemTo.val();
    elemTo.val(elemFrom.val());
    elemFrom.val(toVal);
});

它只是引用了两个select元素(这里假设为#to#from),获取其中一个元素的值,将其中的值替换为另一个的值,然后用第一个存储的值替换第二个值。

请注意,这假设两个select元素具有相同的option值。如果一个option中存在select而另一个{{1}}不存在,则无效。

这里是working example

答案 2 :(得分:0)

如果你点击“发件人”部分中的一个项目,它将被选中附加到“收件人”部分。

$("#selectFrom").dblclick(function(){
    $selectTo.append($selectFrom.children(":selected"));
});

你想要哪些功能?

答案 3 :(得分:0)

我相信你在寻找交换行为。

http://jsfiddle.net/brentmn/D55Dm/

$(function(){
    var $sel1 = $('#currency1');
    var $sel2 = $('#currency2');

    $('input[type=button]').click(function(){
        var val1 = $sel1.val();
        var val2 = $sel2.val();
        $sel2.val(val1);
        $sel1.val(val2);  
        //jqueryui
        //$sel2.val(val1).trigger('change');
        //$sel1.val(val2).trigger('change');               
    });
});