关于php和ajax jquery的问题
我在表格上有个问题。我有一个简单的表单和php中的验证。一切正常。现在,我以ajax load()方法传递该文件,并出现了问题 当我按submit时,页面不显示任何消息,只需重定向到网站的初始页面 我进行了测试,消息以单独的模式显示,没有ajax。只是使用form.php 在index.php中关于php和ajax jquery的问题,php,javascript,jquery,ajax,load,Php,Javascript,Jquery,Ajax,Load,我在表格上有个问题。我有一个简单的表单和php中的验证。一切正常。现在,我以ajax load()方法传递该文件,并出现了问题 当我按submit时,页面不显示任何消息,只需重定向到网站的初始页面 我进行了测试,消息以单独的模式显示,没有ajax。只是使用form.php 在index.php中 $("#replace").load("form.php"); 在form.php中 <?php require_once("validation.php"); ?> <di
$("#replace").load("form.php");
在form.php中
<?php
require_once("validation.php");
?>
<div id="container">
<form method="post" id="customForm" action="">
<div>
<label for="name">Name</label> <input id="name" name="name"
type="text" /> <span id="nameInfo">Insira o seu nome</span>
</div>
<div>
<label for="email">E-mail</label> <input id="email" name="email"
type="text" /> <span id="emailInfo">Insira um email válido por
favor!</span>
</div>
<div>
<label for="myPassword">Password</label> <input id="myPassword"
name="myPassword" type="password" /> <span id="myPasswordInfo">Insira
pelo menos 4 letras e sem espaços</span>
<div id="bar"></div>
</div>
<div>
<label for="pass2">Confirm Password</label> <input id="pass2"
name="pass2" type="password" /> <span id="pass2Info">Confirme a
password</span>
</div>
<div></div>
<div>
<input id="send" name="send" type="submit" value="Send" />
</div>
</form>
<?if( isset($_POST['send']) && (!validateName($_POST['name']) || !validateEmail($_POST['email'])
|| !validatePasswords($_POST['myPassword'], $_POST['pass2']))):?>
<div id="error">
<ul>
<?if(!validateName($_POST['name'])):?>
<li><strong>Invalid Name:</strong> Nome muito pequeno</li>
<?endif?>
<?if(!validateEmail($_POST['email'])):?>
<li><strong>Invalid E-mail:</strong> Escreva um email válido por favor</li>
<?endif?>
<?if(!validatePasswords($_POST['myPassword'], $_POST['pass2'])):?>
<li><strong>Passwords inválidas:</strong> Passwords não coicindem ou são inválidas!</li>
<?endif?>
</ul>
</div>
<?elseif(isset($_POST['send'])):?>
<div id="error" class="valid">
<ul>
<?if(!inserirDados($_POST['name'],$_POST['email'], $_POST['myPassword'], $_POST['pass2'] )):?><?endif?>
</ul>
</div>
<?endif?>
</div>
名称Insira o seu nome
电子邮件Insira um email válido por
赞成
密码Insira
pelo menos 4 letras e sem espaços
确认密码
密码
- 无效名称:Nome muito pequeno
- 无效电子邮件:Escreva um email válido por favor
- 投资银行密码:投资银行密码李>
我怎样才能解决这个问题 我猜您的提交处理程序有问题。两点:
返回false
或在提交处理程序中调用e.PreventDefault()
,以防止提交按钮的默认行为(也就是提交表单)编辑:将“提交”处理程序附加到表单以执行自定义ajax内容,而不是默认行为。请参阅和。如何附加提交处理程序?对不起,您对提交处理程序的意思是什么?您能解释一下我如何重新附加吗?我删除了action=“”,同样的情况也发生了,谢谢。我建议您仔细阅读一下jQuery及其工作原理,似乎您缺少了一些有价值的知识。我认为问题还不清楚。我有一个索引页,当按下一个按钮时,它会像register一样加载表单。现在在新的div中,当我按下send时,页面将全部重新加载到初始状态,div将消失。我有jquery的基本原理,这不是我在帖子中所说的问题,当加载表单时,您需要附加一个提交偶数处理程序(或者在发送按钮上附加一个单击事件处理程序)并执行ajax操作,您必须防止默认行为,否则表单将提交自身(并重新加载页面,因为这是默认操作)是的,我明白你的建议。这是传统的方式。我将修改我的代码。谢谢