Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何获取多个ID getElementById_Javascript_Jquery - Fatal编程技术网

Javascript 如何获取多个ID getElementById

Javascript 如何获取多个ID getElementById,javascript,jquery,Javascript,Jquery,首先,很抱歉我的英语水平很低 我有以下代码: document.getElementById(“id1”).onkeypress=函数(e){ var chr=String.fromCharCode(e.which); 如果(“>=0) 返回false; }; 如何选择第二个id?示例:id1、id2我想使用此代码 谢谢!使用jQuery: $('#id1, #id2').on('keypress', function(e) { var chr = String.fromCharC

首先,很抱歉我的英语水平很低

我有以下代码:

document.getElementById(“id1”).onkeypress=函数(e){
var chr=String.fromCharCode(e.which);
如果(“>=0)
返回false;
};  
如何选择第二个id?示例:id1、id2我想使用此代码

谢谢!

使用jQuery:

$('#id1, #id2').on('keypress', function(e) {
  var chr = String.fromCharCode(e.which);
  if ("><abc/\"".indexOf(chr) >= 0)
      return false;
});

而不是首先使用
id
,这会导致脆弱的代码(就像您看到的问题)如果扩展性不好,请在祖先元素上设置事件,并在事件冒泡到该祖先元素时处理该事件。这被调用并简化了代码。在处理事件时,
event.target
元素将保留对最初触发事件的实际元素的引用,因此您无需知道它的
id

//使用现代标准来处理.addEventListener()事件,而不是
//设置事件属性。在这里,我们在包装器中处理事件
//元素,因此当事件源于子体时,它将冒泡
//在这里处理。
document.getElementById(“包装器”).addEventListener(“键控”,函数(e){
//event.target引用触发事件的元素
//要获取按下的字符,请使用event.key
//当找不到匹配项时,indexOf返回-1。
//而不是检查你应该做什么
//没什么,检查你应该做什么的条件
如果(“>-1”){
控制台日志(“找到匹配项”);
}
});


使用容器
文档中的类和委托。querySelectorAll(“id1,#id2”)
或使用数组
[“id1”,“id2”]
并使用
forEach
。(如果您愿意,也可以为
循环设置一个
)@Pointy此代码不起作用,我如何才能做到这一点。谢谢。@ertugrulov如果jquery是一个选项,请检查我的答案。对于本机DOM来说,jquery的另一个简单用法。Hello Domenik$(“#id1,#id2”)。on('keypress',function(e){@ertugrulov请看下面我的答案。这是最简单和最直接的解决方案。如果他已经在使用它或计划使用它,这将是最好的选择。你可以自由发布你的香草js答案。我已经这样做了。这并不意味着指出一个不是最优的答案是不必要的。当引入JQuery时,本机DOM并不是最好的就像现在一样进化。今天,做一些琐碎的事情,比如选择一个元素,几乎不需要使用库。如果我们不指出这一点,整整一代新的程序员将不会知道其中的区别。
$('#id1, #id2').on('keypress', function(e) {
  var chr = String.fromCharCode(e.which);
  if ("><abc/\"".indexOf(chr) >= 0)
      return false;
});
$('.className').on('keypress', function(e) {
  var chr = String.fromCharCode(e.which);
  if ("><abc/\"".indexOf(chr) >= 0)
      return false;
});