有一些条件的JQuery选择器

时间:2014-09-20 09:43:02

标签: javascript jquery

具有多种条件的JQuery选择器电子邮件验证  嗨,我必须验证电子邮件地址。 我的以下代码工作正常:

contact_email = $('#contact_email').val();
var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   //if Email address is empty it allowed but if it have any value then check whether proper email address or not
if(contact_email && !reg.test(contact_email)) {
        err += 1;
        $('#contact_email').addClass('boxerror');
    }

它可以工作,但是代码不起作用

contact_email = $('#contact_email').val().is(reg.test(this.val())).addClass('boxerror');

1.我做错了什么?

2.带有多个条件的选择器的JQuery是可能的

1 个答案:

答案 0 :(得分:0)

您误解了.is(...)的工作原理。您必须在is()函数中传递jquery选择器,或者您还可以传递一个函数,该函数将由jquery为所有函数调用。它将返回一个布尔值。

要完成任务,您需要使用filter(...)

以下是帮助您的代码:

$("#contact_email").filter(function(index, element) {
    return !reg.test(element.value);
}).addClass("boxerror");

filter()的完整文档为here

因此:

  1. 错误:您在错误的情况下使用is()
  2. 如果很好地实现了jquery,
  3. 选择器可以有多个条件。
相关问题