1

所以,我在这里遇到了一个小问题。

我有一个文本字段(不是区域),我希望在按 Enter 时运行一个 JS 函数。这不是有一个单独的“提交”按钮。现在我正在尝试使用'onKeyPress'事件,但每次我输入一个字母时都会运行该函数。所以如果我想写'LIKE',它会发布'L'然后'LI'然后'LIK'然后“喜欢”。每次我按下任何东西时它都会做出反应,而不仅仅是在我进入时。

我没有表格,只是一个简单的输入 type="text":

<input type="text" id="' + post_id + '" onKeyPress="fbComment(\''+post_id+'\')"> Post a comment </input>

如果你们中的一些人还记得我的最后一个问题,这将是我的 facebook_footer 变量的一部分(我正在尝试 FB API),完成的东西看起来像这样:

var facebook_footer = '<button onClick="fbLike(\''+post_id+'\')"> Like </button> <input type="text" id="' + post_id + '" onKeyPress="fbComment(\''+post_id+'\')"> Post a comment </input>';

你们中有人知道我能做些什么来完成这项工作吗?

4

4 回答 4

3

这是一个简单的功能 -

textElement.onkeydown=function(e){
    if(e.keyCode==13){
        alert('you press enter')
    }
}
于 2013-03-15T21:13:58.350 回答
2

您可以检测输入中的回车键:

$("#inputIDHERE").keypress(function(e) {
    if(e.which == 13) {
        alert('You pressed enter!');
    }
});
于 2013-03-15T20:38:45.900 回答
0

这对我有用:

$("#inputIDHERE").bind('keypress', function(e) {
    if(e.which == 13) {
        alert('You pressed enter!');
    }
});

我还在输入标签周围添加了 <form></form>,尽管这可能不是必需的。

于 2013-11-21T19:31:16.823 回答
0

当然,你可以这样做——你只需要在你的 javascript 中添加一些额外的逻辑。

查看键盘事件教程

您只需要查看 keypress 事件即可查看输入的键。事件对象有一个 keycode 或哪个属性将具有对应于按下的键的值,并且 keycode 13 是输入/返回按钮。

附加参考:Javascript 字符代码

于 2013-03-15T20:46:34.867 回答