Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.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 为什么我的jquerykeydown特性只对第一个输入元素起作用_Javascript_Jquery - Fatal编程技术网

Javascript 为什么我的jquerykeydown特性只对第一个输入元素起作用

Javascript 为什么我的jquerykeydown特性只对第一个输入元素起作用,javascript,jquery,Javascript,Jquery,我已经构建了一个小jQuery脚本,它向我正在编写的输入字段中添加了一个类。但是,它仅在第一个输入字段中写入内容后才对所有输入字段起作用,请参见示例 守则: $('.field').keydown(function () { if ($('.field').val() !== 'Ort, gata eller kommun') { $(this).addClass("focus"); }; }); 这是因为您正在使用$('.field').val()再次抓取元素。将其更改为

我已经构建了一个小jQuery脚本,它向我正在编写的输入字段中添加了一个类。但是,它仅在第一个输入字段中写入内容后才对所有输入字段起作用,请参见示例

守则:

$('.field').keydown(function () {
  if ($('.field').val() !== 'Ort, gata eller kommun') {  
    $(this).addClass("focus");
  };
});

这是因为您正在使用
$('.field').val()
再次抓取元素。将其更改为:

$('.field').keydown(function () {
  if ($(this).val() !== 'Ort, gata eller kommun') {  
    $(this).addClass("focus");
  };
});

$('.field').val()
返回与
.field
匹配的第一个字段的值。您必须使用
$(this).val()
来获取实际触发事件的元素的值。

没问题。我很高兴这对你有帮助。