我很难过我是jQuery的新手,并试图弄清楚我的基本ajax尝试有什么问题。这是表格。
<div id="results"></div>
<form id="myform" name="myform" action="" method="post">
<p>
<label for="email">Email</label>
<input type="text" name="email" id="email" class="sf" />
</p>
<p>
<input type="submit" name="submit" class="submit" />
</p>
</form>
这是jQuery代码
jQuery(document).ready(function(){
jQuery("#myform").validate({
rules: {
email: {
required: true,
email: true,
}
},
messages: {
email: "Please enter a valid email address"
},
submitHandler: function(form) {
event.preventDefault();
$.post('/ajax/emailadd.php', $("#myform").serialize(), function(data) {
$('#results').html(data);
});
}
});
});
验证工作得很好但是根据FireBug,我永远无法启动Ajax帖子,PHP文件只有一个简单的echo语句。
答案 0 :(得分:1)
尝试删除event.preventDefault();
任何地方都没有事件对象,因此可能会出错。尝试检查错误控制台。
答案 1 :(得分:1)
我想:
submitHandler: function(event) {
event.preventDefault();
$.post('/ajax/emailadd.php', $("#myform").serialize(), function(data) {
$('#results').html(data);
});
注意参数'event'。