Javascript 检测逗号/回车键

Javascript 检测逗号/回车键,javascript,jquery,Javascript,Jquery,输入字段中有一些逗号分隔的值。当我按下逗号(,)或ENTER键时,我想提醒一条消息。我已经给出了我用于此的代码,但不起作用。这有什么低效的吗 $(document).on("keyup", '.tagsinput', function (e) { if (e.which == 13 || e.which == 44) { alert('comma added'); } }); 逗号的keycode(jQuery中的是188 这方面有一个很好的工具 演示:您不应该

输入字段中有一些逗号分隔的值。当我按下逗号(
)或ENTER键时,我想提醒一条消息。我已经给出了我用于此的代码,但不起作用。这有什么低效的吗

$(document).on("keyup", '.tagsinput', function (e) {
    if (e.which == 13 || e.which == 44) {
        alert('comma added');
    }
});
逗号的
keycode
(jQuery中的
188

这方面有一个很好的工具


演示:

您不应该听keyup,更好的方法是听keypress:

$('.tagsinput').keypress(function (e) {
    if (e.which == 13 || e.which == 44) {
        alert('comma added');
    }
});

jshiddle here:

尝试使用
keypress
而不是
keyup

$(函数(){/
$(文档).ready(函数(){
$(“#tagsinput”).bind('keypress',函数(e){
var代码=e.keyCode | | e.which;
如果(code==44){//逗号键代码是44
str=$('#tagsinput').val();
str.substring(0,str.length-2);
arr=str.split(“,”);
key=arr[arr.length-1];
排列拼接(排列长度-1,1);
如果(arr.indexOf(键)!=-1){
警报(“检测到重复:+键”);
//取消对下一行的注释,以便在检测到重复的单词后删除它!
//$('#tagsinput').val(arr);
}
}
});
});

子位置名称
使用
event.key
和现代JS! 不再有数字代码。您可以直接检查Enter或key

const input = document.getElementById("inputId");
input.addEventListener("keypress", function (event) {
    if (event.key === "Enter" || event.key === ",") {
        // Do something
    }
});


标签输入是动态添加的吗?
逗号
回车
同时添加?@Tushar这是
,而不是
@AlexMcMillan
我想在按下逗号和回车键时提醒一条消息
@Tushar不要因为别人的英语而挑剔他们。很清楚这是什么意思。有很多理由可以选择
keyup
而不是
keypress
。两者都不是“更好”没有完整的用例,OP没有提供。@Tushar,请运行我的脚本并查看浏览器控制台。此标记输入字段用于输入特定位置下的子位置。键入子位置名称时,我希望避免重复输入。如何检查(当我按enter/逗号和onclick时)这与jquery?子位置名称`请查看下面给出的代码,在这里,我使用了标记输入字段来输入特定位置下的子位置。我希望在键入子位置名称时避免重复输入。我如何检查(当我按enter/逗号和onclick event时)这与jquery?子位置名称@Ilyaskarim Check和
const input = document.getElementById("inputId");
input.addEventListener("keypress", function (event) {
    if (event.key === "Enter" || event.key === ",") {
        // Do something
    }
});