jquery:在选中时切换选择框选择值

时间:2014-04-24 07:51:43

标签: jquery

我想使用jquery,

将值从一个选择框交换到另一个选择框

我的选择框采用http://harvesthq.github.io/chosen/

的形式

示例:

说我有2个下拉选择框,首先我选择了USD&在第二个我已选择EURO,点击切换按钮,选择框选择值和&水平应该互换

http://jsfiddle.net/34kcb/(没有选择效果,效果很好)

我试过下面的代码,但它现在给了我正在寻找的东西,所以可能你可以帮助我

$("body").on("click", "#switchid", function(){ 
               var frm='';var to='';
               frm=$("#from_currency option:selected").val(); 
               to=$("#to_currency option:selected").val(); 
               $("#to_currency").val(frm);
              $("#from_currency").val(to);
              //currencyConverter();
  });

HTML代码

 <select name="from_currency" id="from_currency">
                  <option value="USD">USD : United States Dollar</option> 
                  <option value="EUR">EUR : Euro</option> 
                  <option value="JPY">JPY : Japanese Yen</option>
                  <option value="INR">INR : Indian Rupee</option>
     </select>
<br/>

    <select name="to_currency" id="to_currency"> 
                  <option value="EUR">EUR : Euro</option>  
                  <option value="USD">USD : United States Dollar</option> 
                  <option value="JPY">JPY : Japanese Yen</option>
                  <option value="INR">INR : Indian Rupee</option>
     </select>

<br/>

<input type="button" id="switchid" value="Switch"/>

更新:

在简单的选择框中,它可以工作,但在与Choosen selectbox集成后,同样的事情是 不工作任何想法?

3 个答案:

答案 0 :(得分:0)

试试这个:

$("body").on("click", "#switchid", function(){ 
  var frm = '';
  var to ='';
  frm = $("#from_currency").val(); 
  to = $("#to_currency").val(); 
  $("#to_currency").val(frm);
  $("#from_currency").val(to);
  $("#from_currency, #to_currency").trigger("chosen:updated");
});

在此工作:http://jsfiddle.net/H5x5u/

您不需要选择选项:.val()jQuery会为您选择。

答案 1 :(得分:0)

尝试这个

$("#switchid").on("click", function(){ 
          var frm = '';
          var to ='';
          frm = $("#from_currency").val(); 
          to = $("#to_currency option:selected").val(); 
          $("#to_currency").val(frm);
          $("#from_currency").val(to);
          $("#from_currency, #to_currency").trigger("chosen:updated");
        });

最后一行" $("#from_currency, #to_currency").trigger("chosen:updated");"应该选择更新。我没有测试过这个,因为我没有选择(或者目前的时间)! :)

答案 2 :(得分:0)

$("body").on("click", "#switchid", function(){ 
 var firstDropDownValue = $("#from_currency option:selected").attr('selected','selected').val();  
 var secondDropDownValue = $("#to_currency option:selected").attr('selected','selected').val();
var afterSwitchFirstValue = $("#from_currency").val(secondDropDownValue);        
var afterSwitchSecondValue = $("#to_currency").val(firstDropDownValue);
  });

http://jsfiddle.net/34kcb/2/中找到答案,并且值在selectbox中进行交换,以便根据需要进行操作..