1

我只是在这个链接中设置了一个 jsFiddle,问题是我在哪里清空 textarea 一个换行符,我再也看不到占位符了,我总是有一个换行符看到这个小提琴

http://jsfiddle.net/W5WE8/

我的 HTML:

<script src="http//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<textarea id="mytextarea" rows="15" cols="80" placeholder="write something and press enter"></textarea>

这是我的 JS:

$('#mytextarea').keydown(function(e) {
        if (e.keyCode == 13) {
            $('#mytextarea').val('').focus();
        }
    });
4

3 回答 3

4

简单地阻止事件的默认行为(即在文本区域中放置一个返回),例如:

$('#mytextarea').keydown(function(e) {
    if(e.keyCode == 13) 
    {
        e.preventDefault();
        $('#mytextarea').val('').focus();
    }
});

看到这个更新的 jsFiddle

于 2013-06-18T14:58:24.633 回答
4

您需要防止keydown. 如此处所示:http: //jsfiddle.net/lnrb0b/W5WE8/2/

$('#mytextarea').keydown(function (e) {
    if (e.keyCode == 13) {
        e.preventDefault();
        $('#mytextarea').val('').focus();
    }
});

希望有帮助:)

于 2013-06-18T14:58:48.393 回答
1

发生这种情况的主要原因是由于输入键。这将在执行您需要的操作之前添加一个断线。

按照其他答案中的建议防止事件传播。

于 2013-06-18T15:01:44.567 回答