我正在处理两个文本框 - 使用 jQuery 我希望每次用户更新第一个框中的值时,第二个框中都会出现相同的值。
<input type="text" class="pack"/ >
<input type="text" class="pack2"/>
$(".pack").keypress(function(){
$(".pack2").val($(this).val());
});
问题是,如果我在"pack"中输入一个字母,它不会立即出现在"pack2"中 - 我将不得不输入另一个字母,然后第一个字母将出现在 pack2 中
你可以检查小提琴 -http://jsfiddle.net/itamarperetz/jGXyA/
我可以这样包2立即更新吗?
任何建议都会有所帮助,提前致谢
尝试将keypress
事件更改为keyup
。
$(".pack").keyup(function() {
$(".pack2").val($(this).val());
});
js小提琴演示
这是因为在字符实际添加到输入字段之前触发keypress
。尝试改用 keyup
,该 在将字符添加到输入字段后触发。
看看这个工作答案。
您应该使用keyup
而不是keypress
。
在此处查看 API。
使用键控事件
$(".pack").keyup(function(){
$(".pack2").val($(".pack").val());
});