显示文本而不是警报框

时间:2014-01-29 14:09:47

标签: jquery validation

我正在尝试显示错误消息,说明用户需要输入有效的电子邮件地址。目前我已经显示警报但我希望在文本框下面有一个文本。这是我的jQuery:

var email = $.trim($("#email").val());

if(email == "" || !isValidEmailAddress(email)) {
    alert('enter valid email');
    return false;
}

2 个答案:

答案 0 :(得分:0)

你需要这样的东西。

var email = jQuery.trim(jQuery("#email").val());
    if(email == "" || !isValidEmailAddress(email)){
        jQuery('#email_error').show();
        return false;
    }

在HTML中就像:

<input type="text" value="" id="email" name="email" />
<div style="display:none" class="error" id="email_error">Your email is incorrectly formatted</div>

您当然可以将错误字段中的类更改为另一种方法。

答案 1 :(得分:0)

我更喜欢在字段后面创建一个空的span元素,并在其中插入任何错误消息。这样,您可以收到各种错误消息,例如无效的电子邮件,没有输入电子邮件等。

var email = jQuery.trim(jQuery("#email").val()),
    errorText;

if(email === ""){
  errorText = "Please enter an address";
} else if (!isValidEmailAddress(email)){
  errorText = "Address is invalid";
}

if (errorText){
  jQuery('#email_error').text(errorText);
  return false;
}

范围也会以内联方式显示,因此消息会显示在字段旁边。