PHP和HTML表单,javascript onsubmit未执行
发布时间:2020-12-13 16:15:52 所属栏目:PHP教程 来源:网络整理
导读:我有一个 HTML表单要求用户输入. javascript函数用于验证表单,并且应该在执行 PHP代码之前触发(使用onsubmit). (js文件在标题中引用 script type =“text / javascript”src =“js / javascript.js” / script) 然而,javascript永远不会被执行,而是PHP代码执
我有一个
HTML表单要求用户输入.
javascript函数用于验证表单,并且应该在执行
PHP代码之前触发(使用onsubmit). (js文件在标题中引用< script type =“text / javascript”src =“js / javascript.js”>< / script>)
然而,javascript永远不会被执行,而是PHP代码执行并且(正确地)包含新文件. 如何根据需要执行javascript? HTML文件: <form name="details" action="" method="post" onSubmit="return ValidateForm(details);"> ... <input type="submit" name="post-this-form" value="Next"/> </form> PHP文件: if (isset($_POST['post-this-form']) and $_POST['post-this-form'] == 'Next') { ... some php ... include 'shipping-details.html.php'; exit(); } 编辑 这是请求的JavaScript.它已经过测试和工作,没有涉及任何PHP.通过传递细节(表单的名称),我正在使所有表单字段可访问. function ValidateForm(details) { var firstName=document.forms.details.firstName.value; var lastName=document.forms.details.lastName.value; var streetAddress=document.forms.details.streetAddress.value; var town=document.forms.details.town.value; var city=document.forms.details.city.value; var zip=document.forms.details.zip.value; var country=document.forms.details.country.value; var creditCard=document.forms.details.creditcard.value; ... //Checks firstName if ((firstName=="")||(!firstName.match(alphabetExpression))) { alert ("Invalid first name,please re-enter"); return false; } ... //Checks creditCard if ((creditCard=="")||(!creditCard.match(numericExpression))||(creditCardLength!=16)) { alert ("Invalid credit card entry,please re-enter"); return false; } }// end function 编辑2 我添加了警报(“嗨”);到javascript的开头,警报永远不会出现,这让我觉得该功能根本没有执行. 编辑3 我最初怀疑这个问题可能是由于PHP造成的.正如杰森在评论中提到的,问题出在javascript本身.这是一个有点奇怪的想法,因为相同的JavaScript代码“没有PHP”和我的本地机器“独立”工作.需要考虑的因素很多…谢谢所有人花时间看看我的问题! 解决方法
评论转换为答案
“我打赌有一个javascript错误.打开错误控制台.在firefox中使用ctrl shift j.” 很高兴有帮助. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |