当用户在文本框中键入值时,有没有办法从一个文本框中获取值并使用jQuery动态添加到另一个文本框?如果有这样的事情,请有人解释一下这个方法吗?
regrds, Rangana
答案 0 :(得分:11)
你的意思是http://jsfiddle.net/ZLr9N/?
$('#first').keyup(function(){
$('#second').val(this.value);
});
实际上它非常简单。首先,我们在第一个keyup
上附加input
事件处理程序。这意味着只要有人在第一个input
中键入内容,就会调用keyup()
函数内的函数。然后,我们使用input
函数将第一个input
的值复制到第二个val()
。就是这样!
答案 1 :(得分:2)
$('#textbox1').keypress(function(event) {
$('#textbox2').val($('#textbox1').val() + String.fromCharCode(event.keyCode));
});
这将确保textbox2
始终与textbox1
的值匹配。
注意:您可以像其他人建议的那样使用keyup
事件,但可能会有轻微的延迟。测试两种解决方案,这个应该“看起来”更好。对它们进行测试并按住一个键或快速输入,你会发现使用keyup
时会出现明显的延迟,因为在keypress
事件发生之前keyup
会触发。
答案 2 :(得分:1)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"
>
<html lang="en">
<head>
<title><!-- Insert your title here --></title>
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#from').keyup(function(event) {
$('#to').text($('#from').val());
});
});
</script>
</head>
<body>
<textarea id="from" rows=10 cols=10></textarea>
<textarea id="to" rows=10 cols=10></textarea>
</body>
</html>
答案 3 :(得分:0)
$(document).ready(function(){
$("#textbox1").blur(function(){$('#textbox2').val($('#textbox1').val()});
}
动作将对textbox1的模糊执行。