我有两个文本框的值: -交换两个文本框的值
var pickup = $('#txt-pickup');
var destination = $('#txt-destination');
,我想交换两个值如下: -
pickup.val(destination.val());
destination.val(pickup.val());
然而,上述永远都设置值作为相同的值。 (与目标值相同)
有没有同时更改这两种方法的方法?
我有两个文本框的值: -交换两个文本框的值
var pickup = $('#txt-pickup');
var destination = $('#txt-destination');
,我想交换两个值如下: -
pickup.val(destination.val());
destination.val(pickup.val());
然而,上述永远都设置值作为相同的值。 (与目标值相同)
有没有同时更改这两种方法的方法?
我做一个jsfiddle给你:
<input id="txt-pickup" type="text"/>
<input id="txt-destination" type="text"/>
<input id="change" type="button" value="Swap"/>
$(document).ready(function(){
$("#change").on('click',function(){
var pickup = $('#txt-pickup').val();
$('#txt-pickup').val($('#txt-destination').val());
$('#txt-destination').val(pickup);
});
});
尝试
将值存储在变量中,而不是将其分配给另一个文本框。
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);
尝试这个工作对我
<div>
<input type="text" id="text1"/>
<input type="text" id="text2"/>
<input type="button" id="button" value="swap"/>
</div>
$(document).ready(function(){
$("#button").click(function()
{
var a = $("#text1").val();
$("#text1").val($("#text2").val());
$("#text2").val(a);
});
});
</script>
使用一个临时变量,这就是基本的 – Satpal
为什么downvoted ??? –
Javascript不是异步的! – theMarceloR