gpt4 book ai didi

javascript - 电子邮件验证未捕获必填字段

转载 作者:行者123 更新时间:2023-12-03 09:25:36 25 4
gpt4 key购买 nike

我有一个 javascript 验证功能。我需要检查所需的字段是否为空或错误的邮件地址。所需的字段为空正在工作但是当我输入像 abc@abc 这样的邮件或错误的东西时,它不会捕获我的代码中的错误.

When i type all required fileds but wrong email address ( abc@abc or abc.com like doesn't capture.)

我的代码

 function newsValidation() {

var status = true;
if (($.trim($('#txtNewsname').val()) == '') || ($.trim($('#txtnewsarea').val()) == '') ||
($.trim($('#txtemail').val()) == '')) {

$("#reqfield").removeClass("hidden");

if (!ValidateEmail($("#txtemail").val())) {
$("#emailval").removeClass("hidden");
}
status = false;
}

电子邮件验证功能

 function ValidateEmail(email) {
var expr = /^([\w-\.]+)@@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
return expr.test(email);
}

最佳答案

您对有效电子邮件的测试位于 if block 内,该 block 测试该值是否不为 null,因此当您在文本框中输入任何值(无论是无论是否有效)if (!ValidateEmail($("#txtemail").val())) { 永远不会被调用。将脚本更改为

function newsValidation() {
var status = true;
if (($.trim($('#txtNewsname').val()) == '') || ($.trim($('#txtnewsarea').val()) == '') || ($.trim($('#txtemail').val()) == '')) {
$("#reqfield").removeClass("hidden");
status = false;
} else if (!ValidateEmail($("#txtemail").val())) {
$("#emailval").removeClass("hidden");
status = false;
}
}

旁注:所有这些功能都是在 MVC 中开箱即用的,只需将 [Required][EmailAddress] 属性添加到您的属性并包含相关的脚本(jquery.validate.jsjquery.validate.unobtrusive.js)和 @Html.ValidationMessageFor() 帮助程序,这意味着您可以获得两者客户端和服务器端验证(并且一切都正确完成!)

关于javascript - 电子邮件验证未捕获必填字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31689265/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com