【发布时间】:2011-11-12 18:49:25
【问题描述】:
我想要一个聊天框(textarea),如果用户按 Enter 则它应该提交聊天,如果用户按 Shift+Enter 则它应该在一个新行中输入。
我尝试了一些东西,但无法弄清楚确切的 keyup 或 keydown 东西。我现在使用的代码是:
$("textarea").keydown(function(e){
if (e.keyCode == 13 && !e.shiftKey)
{
e.preventDefault();
}
});
我还想在按下 Enter+Shift 键时获得\n。
编辑
我的代码的问题是:-
当我使用警报检查客户端上的内容时,它会显示下一行。但是当我发布它时,我的导轨后端。然后它只是一个简单的字符串。没有新线的东西。
这就是我将聊天发送到 Rails 服务器的方式。
$.post("/incomingchat", { body:$("#chat_" + group_id).val() },
function(data){
// do something..
});
【问题讨论】:
-
请不要只是链接到 jsfiddle;始终在问题中包含代码。
-
您发布的代码有什么问题?对我来说它就像你描述的那样工作? jsfiddle.net/Su5ts/25
-
@Matt 抱歉,请记住这件事。
标签: javascript jquery keypress