将值从一个文本框追加到另一个文本框

时间:2014-06-19 07:26:42

标签: javascript jquery

我有两个文本框,当我在第一个文本框中键入内容时,它应该反映在第二个文本框中。我试图在key up事件中实现这一点,当我执行以下操作时,它将text2的值替换为text1.But的值我不想替换text2中的值,我想从中选择新键入的值text1并将其附加到text2。

这里text2包含一些text1中没有的值,所以我不能使用

 $('.text2').val($('.text2').val()+$(this).val());

 <input class='text1'>
 <input class='text2'>

 $(".text1").live("keyup",function(e) {
 $('.text2').val($(this).val());
 });

3 个答案:

答案 0 :(得分:0)

使用此

 $(".text1").on("keyup",function(e) {
 var text2val = $('.text2').val();
 $('.text2').val(text2val  + $(.text1).val());
 });

OR

$(".text1").on("keyup",function(e) {
     var text2val = $('.text2').val();
     var text1val = $(this).val();
     $('.text2').val(text2val  + text1val);
     });

答案 1 :(得分:0)

还有另一种方法可以做到这一点。您可以将cssClass分配给要同步的文本框,然后在jQuery下使用以实现上述功能。

$(document).ready(function() { $('.dummyClass').keyup(function(e) { var txtVal = $(this).val(); $('.dummyClass2').val($('.dummyClass2').val() + txtVal); }); });

答案 2 :(得分:0)

var temp = "";

$( ".text1" ).keyup(function() {
if(temp !== ""){
    $('.text2').val($('.text2').val().slice(0, -temp.length));
}
var $text1= $(this).val();
    temp = $text1;
    $('.text2').val($('.text2').val() + $text1);
});
$(".text2").keyup(function(){
    temp = "";
});

Fiddle