在表单字段内返回Jquery验证响应
我正在使用jquery验证插件创建一个弹出式jquery ajax注释表单。目前,ajax在html表单字段下返回“thisfieldsrequired”。如何让jquery在表单字段中作为模糊/聚焦事件返回此响应 以下是控制事件的js:在表单字段内返回Jquery验证响应,jquery,ajax,forms,validation,response,Jquery,Ajax,Forms,Validation,Response,我正在使用jquery验证插件创建一个弹出式jquery ajax注释表单。目前,ajax在html表单字段下返回“thisfieldsrequired”。如何让jquery在表单字段中作为模糊/聚焦事件返回此响应 以下是控制事件的js: <script> $(document).ready(function() { $('#commentForm').validate({ submitHandler: function(form)
<script>
$(document).ready(function() {
$('#commentForm').validate({
submitHandler: function(form) {
$.ajax({
type: 'POST',
url: 'process.php',
data: $(this).serialize(),
success: function(returnedData) {
$('#commentForm').append(returnedData);
}
});
return false;
}
});
});
</script>
$(文档).ready(函数(){
$(“#commentForm”)。验证({
submitHandler:函数(表单){
$.ajax({
键入:“POST”,
url:'process.php',
数据:$(this).serialize(),
成功:函数(返回数据){
$(“#commentForm”).append(returnedData);
}
});
返回false;
}
});
});
html表单的配置如下所示:
<form class="cmxform" id="commentForm" method="POST" action="">
<p>
<label for="cname">Name</label>
<input id="cname" type="text" name="name" size="60" class="required" minlength="2" />
</p>
<p>
<label for="cemail">E-Mail</label>
<input id="cemail" type="text" name="email" size="60" class="required email" />
</p>
<p>
<label for="curl">URL</label>
<input id="curl" type="text" name="url" size="60" class="url" value="" />
</p>
<p>
<label for="ccomment">Your comment</label>
<textarea id="ccomment" type="text" name="comment" cols="72" rows="8" class="required"></textarea>
</p>
<p>
<div id="button2"><input class="submit" id="submit_btn" type="submit" value="Send Email"/></div>
</p>
</form>
名称
电子邮件
统一资源定位地址
你的评论
谢谢。只要:
$('#commentForm #cname').val("This is required field");
也可以使用json。在这种情况下,将是:
success:function(resp){
if(resp["code"]=="err"){
$('#commentForm #cname').val(resp["txt"]);
//of course you need to use a loop to check all fields
}
}
为了解决这个问题,我在jQuery中结合使用了errorPlacement和fadeOut功能。这是可行的解决方案:
$('#commentForm').validate({
submitHandler: function(form) {
$.ajax({
type: 'POST',
url: 'process.php',
data: $(this).serialize(),
success: function(returnedData) {
$('#commentForm').append(returnedData);
}
});
return false;
},
errorPlacement: function(error, element) {
error.insertAfter(element).position({
my: 'right top',
at: 'right top',
of: element
});
error.fadeOut(3000);
},
});
请复制
returnedData
内容好吗?我记得,Validate插件有一个选项可以逐个验证输入。显示如何设置元素的验证。对于每个元素,您需要$('#cname').change(function(){$(“#cmxform”).validate().element(“#cname”);})
能否从returnedData
中检索无效元素?returnedData仅显示“此字段是必需的”。除非表单进行验证,在这种情况下它引用process.php。谢谢你,谢谢你,雷扎。但是如何在表单字段中返回验证响应?您需要使用errorPlacement:
选项/handler。我使用它将我的错误放入qTip工具提示气泡中。请看本页底部: