gpt4 book ai didi

javascript - PHP 验证和 Javascript 验证不能一起工作

转载 作者:行者123 更新时间:2023-11-28 08:36:26 25 4
gpt4 key购买 nike

当我将 php 表单验证代码与 javascript 验证代码结合起来时,当我点击提交按钮时,javascript 代码无法工作。它只会验证第一个表单字段,而不验证其他 3 个字段,然后 php 将验证所有字段。在 javascript 完成表单验证之前,我不希望 php 表单验证执行任何操作。

当我仅使用 php 或仅使用 javascript 进行验证时,代码可以正常工作。我在这里缺少什么?这与表格的开头有关吗?

"form name="contactform" id="contactform" method="post" 
action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
onsubmit="return validateentry();">"

当“action”转到不同的网页时,我是否应该进行 php 表单验证?

JavaScript 代码:

function validateemail()
{
var emailentry=document.forms.contactform.email.value;
at=emailentry.indexOf("@");
period=emailentry.lastIndexOf(".");
if(at < 1 || ( period - at < 2 ))
{
alert("Please enter correct email in the format of 'yourmail@yourwebsite.com'")
document.forms.contactform.email.focus();
return false;
}
return(true);
}


function validatephonenumber()
{
var re = /(?:\d{3}|\(\d{3}\))([-\/\.])\d{3}\1\d{4}/;
var numbers = document.forms.contactform.phone.value;
var verified = re.exec(numbers);
if (!verified)
{
alert("Please enter a phone number in the format of 999-999-9999");
return false;
}
return(true);
}

function validateentry()
{
if(document.forms.contactform.name.value=="")
{
alert("Please provide your name.");
document.forms.contactform.name.focus();
return false;
}

if(document.forms.contactform.company.value=="")
{
alert("Please provide your company name. If you don't have one, simply state
that you don't.");
document.forms.contactform.company.focus();
return false;
}

if(document.forms.contactform.email.value == "")
{
alert("Please provide an Email address.");
document.forms.contactform.email.focus();
return false;
}else{
var validformat=validateemail();
if(validformat==false)
{
return false;
}}

if(document.forms.contactform.phone.value=="")
{
alert("Please provide a phone number in the format 999-999-9999.");
document.forms.contactform.phone.focus();
return false;
}
else if(document.forms.contactform.phone.value.length < 12)
{
alert("Please provide the phone number in the format of 999-999-9999.");
document.forms.contactform.phone.focus();
return false;
}
else
{
var validnumber=validatephonenumber();
if(validnumber==false)
{
return false;
}}

if(document.forms.contactform.msg.value=="")
{
alert("Please provide a message.");
document.forms.contactform.msg.focus();
return false;
}
return(true);
}

最佳答案

如果没有更多代码,目前尚不清楚,但根据您的评论,我猜测您错误地编写了 php,并且它破坏了您的 javascript/html 代码。也许是你的引言之一?查看页面的源代码并通过在线验证服务之一运行它,例如 http://validator.w3.orghttp://www.jslint.com

关于javascript - PHP 验证和 Javascript 验证不能一起工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21107424/

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