实时侦听器中复杂的jquery选择器的语法

时间:2018-10-27 09:46:54

标签: jquery

我首先在代码中使用了以下语法,但是它没有任何错误:

$("div[data-content-tab]").find("input").on("change input paste keyup",function(){
    console.log ($(this).val());
})

我已切换到第二种语法,但出现以下错误:

$(document).on("change input paste keyup",'div[data-content-tab].find("input")',function(){
    console.log($(this).val());
})
  

未捕获的错误:语法错误,无法识别的表达式:   div [data-content-tab] .find(“ input”)

以上两者语法的正确语法是什么?

2 个答案:

答案 0 :(得分:2)

由于div[data-content-tab].find("input")的语法无效,您需要将div[data-content-tab] input更改为.find("input")

$(document).on("change input paste keyup",'div[data-content-tab] input',function(){
    console.log($(this).val());
})

答案 1 :(得分:1)

第一个示例看起来完全正常。您的html可能有问题。

$("div[data-content-tab]").find("input").on("change input paste keyup",function(){
    console.log ($(this).val());
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-content-tab='1'><input /></div>