有人可以帮我理解这行jquery代码吗?:
$(this).find('input[type="submit"]:not(.cancel), button').click(function ()
我对.cancel
特别感兴趣,因为整个jquery代码块(此处未包含)用于验证页面,如果用户点击取消,我试图阻止验证按钮。我猜测上面的代码行说是单击提交按钮不是取消按钮,然后继续。
但我不知道如何将按钮指定为取消。
答案 0 :(得分:12)
基本上它正在寻找位于this
内且具有以下要求的元素
cancel
OR
答案 1 :(得分:9)
这里的答案很好。也许这个带注释的版本增加了一些价值。
$(this) // within this jQuery object
.find(' // find all elements
input[type="submit"] // that are input tags of type "submit"
:not(.cancel) // and do not have the class "cancel"
, // or
button // are button elements
')
.click( // and for each of these, to their click event
function (){} // bind this function
);
答案 2 :(得分:2)
他们正在应用一个名为cancel的CSS类来基本上对取消按钮进行符号化(然后检查它是一个没有这个类的按钮)
虽然我不知道你可以在CSS类名中使用星号( *
)。
没关系,你试图在代码块中加粗代码
我也很好奇他们为什么要取消按钮类型提交,因为他们想要取消它。 (如<input type="button" ... />
似乎更合适。)
答案 3 :(得分:2)
.cancel
是一个类选择器。具体来说,它正在查找input
个元素,其type属性设置为submit
,但没有cancel
类。它还会查找tagName为button
的元素。
您可以“将按钮指定为取消”,如下所示:
<input type='submit' class='cancel' />
答案 4 :(得分:1)
基本上是选择器说 给我提交没有取消类和按钮的按钮并应用点击处理程序。 尝试查找以下选择器
标签 。类 :不