【发布时间】:2011-12-30 00:50:36
【问题描述】:
我正在使用 jquery 验证 1.9.0。我使用了最新的 Jquery 并回到了 1.6.0。结果没有变化
我的问题是这样的:当我故意输入错误的值(字符不足等)时,验证脚本会正确显示错误,但仍然允许提交脚本。 我尝试了验证方法,包括添加规则、规则和下面非常简单的表单类型。
<script>
jQuery.validator.setDefaults({
debug: true,
success: "valid"
});
</script>
<script>
$(function() {
$("#comm").validate();
});
</script>
表格
<form action="comm.php" method="post" name="comm" id="comm">
Name: <input type="text" name="name" id="name" minlength="3" class="required" />
Email:<input type="email" name="email" id="email" class="required email" /> <br />
<label for="comment"> Comment </label> <br />
<textarea name="comment" id="comment" cols="80" rows="5" minlength="6" class="required" /></textarea>
<?php
date_default_timezone_set('America/New_York');
$date = date("Y-n-j h:i:s");?>
<input type="hidden" name="date" id="date" value="<?php echo $date; ?>" />
<?php $post_id = $id;?>
<input type="hidden" name="post_id" id="post_id" value="<?php echo $post_id; ?>" />
<?php $ip = $_SERVER["REMOTE_ADDR"]; ?>
<input type="hidden" name="ip" id="ip" value="<?php echo $ip; ?>" />
<input type="submit" value="Post" name="post" id="post" /> <input type="reset" value="Reset Form" name="reset" id="reset" />
</form>
非常简单的东西。
提交发生在我在网上的所有表单上,并且都在本地主机上。我总能发现错误,但从不阻止它们。我做错了什么?
Firebug 显示我正确提交并且没有脚本错误。所有 jquery 也都已连接。 Firebug 还向我展示了这个在表单 html 中提交 novalidate="novalidate" 之后。使用 onsubmit=return false 不会改变任何东西
我正在使用 ajax 提交表单,完美运行
$(function() {
$("#comm").submit(function() {
var data = $('#comm').serialize();
alert (data); return false;
$.ajax({
url: "comm.php",
data: data,
type: "POST",
success: function(msg){
if(msg){
$('.comme').prepend().html(msg).show();
}else{
$('.comme').text("nothing came back");
}
}
});
return false;
});
});
谢谢
【问题讨论】:
标签: php jquery html jquery-validate