Synchonise 2输入字段,可以使用jQuery完成吗?
当输入A被修改时,jQuery可以将一个输入字段的文本同步或复制到另一个输入字段吗? 例如:
...If I type something here ... It will be copied here
jQuery可以这样做吗?
试试这个:
$("#input_A").bind("keyup paste", function() { $("#input_B").val($(this).val()); });
对于jQuery 1.7+使用:
$("#input_A").on("keyup paste", function() { $("#input_B").val($(this).val()); });
示例小提琴
– 2017年8月更新 –
input
事件现在得到了很好的支持 ,因此您可以使用它来代替组合keyup
和paste
事件:
$("#input_A").on("input", function() { $("#input_B").val(this.value); });
在写入,粘贴等过程中,将复制值。 在jQuery <1.7而不是使用bind
。
$( "#input_A" ).on( "paste keyup", function() { $( "#input_B" ).val( $( this ).val() ); });
是的,它可以。 绑定按键或键盘事件并复制值:
$('#input_A').keyup(function() { $('#input_B').val($(this).val()); });
或者,如果您只想在用户完成编辑后复制该值,请使用具有相同处理程序的blur事件。 这具有额外的优点,如果用户将文本粘贴到input_A
,它也将被复制到input_B
。
$('#input_A').blur(function() { $('#input_B').val($(this).val()); });
这是一个使用keyup和一个带有blur的工作示例 。
迟到的答案,但我更喜欢这种方式,因为它不需要多个元素ID:
$('input.sync').on('keyup paste', function() { $('input.sync').not(this).val($(this).val()); });
加勒特