我想通过点击地球上任何键盘上的Enter
键,在textarea中提交内容,如下所示。当用户点击Shift+Enter
键时,插入符号必须转到新行,并且在点击Enter
时,提交的textarea内容应该在按下Shift+Enter
时创建新行。 textarea的内容应该在class commentWrap
的div之后插入,但最后提交的注释应该是最后一个和反之。
我希望此解决方案适用于所有浏览器。
<div class="commentWrap"></div>
<textarea id="test"></textarea>
<script type="text/javascript">
$(document).ready(function() {
$("#test").keypress(function(e) {
var textVal = $(this).val();
if(e.which == 13 && e.shiftKey) {
//What should I really do here
}
else if (e.which == 13 && ! e.shiftKey) {
e.preventDefault(); //Stops enter from creating a new line
//this.form.submit(); //or ajax submit
if (this.value ==="") {
alert("Hey punk! Put some text before you hit enter.");
}else {
alert(textVal);
$("<div class='comment'>"+ textVal +"</div>").insertAfter('.commentWrap');
}
}
});
});
</script>
答案 0 :(得分:1)
//我该怎么做呢
我认为,如果按下shift + enter,所有浏览器都会插入一个新行,这样你就可以返回true;
答案 1 :(得分:0)
如果您已经有一个用于提交表单的提交按钮,则只需触发点击处理程序。
$("#submitButton").click();