Javascript 若表单中有错误,则提交表单时对话框应保持打开状态
我有一个注册对话框,里面有一个登录表单。 我已经在与表单相同的文件中完成了一些基本表单验证,如果存在错误,则在提交表单时,会在字段下方回显相应的消息 但是,当表单被提交时,页面被刷新,对话框关闭,用户必须再次打开它才能看到错误。这不太合适,我想在刷新时保持对话框打开,只有在表单验证中存在错误时。 一定有办法解决这个问题,但我不知道如何实现 以下是我的代码(index.php):Javascript 若表单中有错误,则提交表单时对话框应保持打开状态,javascript,php,jquery,forms,Javascript,Php,Jquery,Forms,我有一个注册对话框,里面有一个登录表单。 我已经在与表单相同的文件中完成了一些基本表单验证,如果存在错误,则在提交表单时,会在字段下方回显相应的消息 但是,当表单被提交时,页面被刷新,对话框关闭,用户必须再次打开它才能看到错误。这不太合适,我想在刷新时保持对话框打开,只有在表单验证中存在错误时。 一定有办法解决这个问题,但我不知道如何实现 以下是我的代码(index.php): //PHP验证 $fornameErr=$nameerr=“”; $forname=$name=“”; 如果($\服务
//PHP验证
$fornameErr=$nameerr=“”;
$forname=$name=“”;
如果($\服务器[“请求\方法”]=“发布”){
if(空($_POST[“forename”])){
$fornameErr=“缺失”;
}
否则{
$forename=$_POST[“forename”];
}
如果(空($_POST[“姓氏])){
$姓氏err=“缺失”;
}
否则{
$姓氏=$_POST[“姓氏”];
}
}
//链接,通过调用“check\u domain\u input()”函数打开对话框
或
//对话框中的窗体
您可以使用onsubmit=“return validateFunction()”
,如中所示
您可以让PHP设置一个JavaScript变量,jQueryOnLoad函数读取该变量并对其作出反应
您可以使用AJAX代替表单提交。使用AJAX,您可以简单地使用AJAX调用的error函数对错误的验证作出反应
如果要显示错误,可以在页面加载时调用check\u domain\u input
方法,如下所示:
<script>
function check_domain_input()
{
...
}
<?php if (!empty($fornameErr) || !empty($surnameErr)) : ?>
$(function() {
check_domain_input();
});
<?php endif; ?>
</script>
函数检查\域\输入()
{
...
}
$(函数(){
检查_域_输入();
});
使用以下内容:
(可在)+1找到有用的链接谢谢!我在下面的回答中添加了一个更好的链接作为第一个建议。如果你需要关于这三个答案中任何一个的更多信息,只管问。
<script>
function check_domain_input()
{
...
}
<?php if (!empty($fornameErr) || !empty($surnameErr)) : ?>
$(function() {
check_domain_input();
});
<?php endif; ?>
</script>