交换两个文本框值

我有两个文本框值: –

var pickup = $('#txt-pickup'); var destination = $('#txt-destination'); 

我想按如下方式交换这两个值: –

 pickup.val(destination.val()); destination.val(pickup.val()); 

但是,上述内容始终将两个值都设置为相同的值。 (与目标值相同)

有没有办法同时改变这两种情况?

我为你做了一个jsfiddle:

    $(document).ready(function (){ $("#change").on('click',function(){ var pickup = $('#txt-pickup').val(); $('#txt-pickup').val($('#txt-destination').val()); $('#txt-destination').val(pickup); }); }); 

的jsfiddle

试试这个对我有用

 

 $(document).ready(function(){ $("#button").click(function() { var a = $("#text1").val(); $("#text1").val($("#text2").val()); $("#text2").val(a); }); });  

尝试

将值存储在变量中,而不是将其分配给另一个文本框。

 var pickup = $('#txt-pickup'), destination = $('#txt-destination'); var d_val = destination.val(); //cache value of destination destination.val(pickup.val()); //change value of destination to pickup.val() pickup.val(d_val); //change value of pickup to cached value of destination 

您可以将这两个文本框中的任何一个的值存储在变量中,然后将此变量设置为另一个文本框的值:

 var tmp = $('#txt-pickup').val(); pickup.val(destination.val()); destination.val(tmp); 

小提琴演示