JQuery选择器

cor*_*ews 0 jquery

我有一个简单的jQuery选择器,它选择没有noValidate类的所有链接.如果我在一个项目上只有一个类,那么效果很好但是如果我添加第二个类,它将不再找到该类.如何轻松检查类是否包含noValidate而不是等于它.

电流选择器

$("a[class!=noValidate]").click(function() {
    //Magic Happens
});
Run Code Online (Sandbox Code Playgroud)

适用于:

<a href="#" class="noValidate">
Run Code Online (Sandbox Code Playgroud)

失败了

<a href="#" class="noValidate className2">
Run Code Online (Sandbox Code Playgroud)

Pao*_*ino 6

你是否有任何理由标记那些不应该被验证的链接而不是那些应该被验证的链接?第二种方式会容易得多,但如果你需要坚持这一点,那么你可以这样做:

$('a:not(.noValidate)').click(...);
Run Code Online (Sandbox Code Playgroud)

这是使用not选择器,只选择没有"noValidate"类的链接.在内部,jQuery必须获取页面中的所有链接以查看它是否具有类,这不是非常有效.理想情况下,您只需要为应该验证的链接提供一个类,然后您可以执行以下操作:

$('a.validate').click(...);
Run Code Online (Sandbox Code Playgroud)

好多了,不是吗?也快得多.