我有一个带有名称字段和文本区域的表单。
当用户输入他们的名字时,我想将其与其他一些预先格式化的文本一起包含在文本区域中。
如何做到这一点?
jQuery的?
答案 0 :(得分:1)
在文本输入上使用keyup
handler,如果要将其用于显示,请在textarea中添加readonly="readonly"
属性。
例如:
<input type="text">
<br>
<textarea readonly="readonly" rows="10" cols="40"></textarea>
还有一些jQuery:
var static_text = "Where is pancakes house?\n\n";
$('input').keyup(function() {
$('textarea').text(static_text + $(this).val());
});
现场演示:http://jsfiddle.net/ambiguous/Tt2gt/1/
每次在keyup
(包括退格键)中按下某个键时,绑定到<textarea>
事件都会调用<input>
更新回调。如果您使用change
处理程序,<textarea>
将不会更新,直到<input>
失去焦点并且听起来不像您所追求的那样。
答案 1 :(得分:0)
是的,jQuery(以及任何旧的JavaScript)可以为您做到这一点。你想要做的是听取onchange
事件。 Click here to read more on JavaScript events
在jQuery中,我们可能有这样的东西:
$(document).ready( function(){
$("#my_Name_Field").change( function(){
var myText = "Some preformatted text." +
"Oh, and here's the name you entered:" + $("#my_Name_Field").val();
$("#my_Text_Field").val( myText );
});
});
my_Name_Field
代表“姓名”文字字段的ID
属性,而my_Text_Field
代表文本区域的ID。
答案 2 :(得分:0)
您可以执行onchange
事件或onblur
您的姓名文本框事件
$('#name-id').change(function(){
var name = $(this).val();
$('#textarea').text("this is "+ name +" . he is the user");
});
答案 3 :(得分:0)
是的,你可以用jQuery做到这一点。
$('#namefieldID').change(function() {
var formatedText = $("#namefieldID").val() + "any text you want";//do any formatting you want here
$("#textareaID").val( formatedText);
});