我只是在这个链接中设置了一个jsFiddle,问题是我将textarea清空了一行换行,我再也看不到占位符了,我总是有一条断线就在那里看到这个小提琴
我的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();
}
});
答案 0 :(得分:4)
简单地阻止事件的默认行为(即将回车放入textarea),例如:
$('#mytextarea').keydown(function(e) {
if(e.keyCode == 13)
{
e.preventDefault();
$('#mytextarea').val('').focus();
}
});
请参阅此updated jsFiddle
答案 1 :(得分:4)
您需要阻止keydown
的默认行为。如下所示:http://jsfiddle.net/lnrb0b/W5WE8/2/
$('#mytextarea').keydown(function (e) {
if (e.keyCode == 13) {
e.preventDefault();
$('#mytextarea').val('').focus();
}
});
希望有所帮助:)
答案 2 :(得分:1)
发生这种情况的主要原因是因为输入键。这将在你做你需要的之前添加一个断行。
按照其他答案中的建议阻止事件传播。