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
}
});