键入时显示文本

时间:2012-11-05 20:16:52

标签: jquery

我认为这个很简单,但除了STO上的one post here之外我无法找到任何东西。

问题是代码不起作用。我创建了fiddle,因此您可以自己查看。

以下是小提琴的代码:

$('#someTextBox').keyup(function() {
    $('#target').html(this.val());
});

但是,我的HTML与示例有点不同:

<textarea name="comment-box" id="comment-box" class="required"></textarea>
...
<p id="comment-preview"></p>

我需要帮助的是一种显示textarea容器上"comment-preview"所输入内容的方法。

非常感谢任何指导我这方面的帮助。

4 个答案:

答案 0 :(得分:16)

this.val()更改为$(this).val()

DEMO: http://jsfiddle.net/FjNzS/1/

.val是一个jQuery函数,可以从jQuery对象访问。在处理程序内部,this是DOM对象,因此您需要用$()包装它以使其成为jQuery对象。

答案 1 :(得分:5)

您可以使用$(this).val()this.value,但this.val()不正确。

答案 2 :(得分:2)

您也可以使用.on()

尝试此代码
$('#someTextBox').on('keyup', function(){
    $('#target').html($(this).val());
}); 

例如http://jsfiddle.net/FjNzS/2/

答案 3 :(得分:1)

$("#comment-box").keyup(function() {
    $("#comment-preview").text($(this).val());
});