Javascript 在jQuery UI对话框中的表单中调用Parsley.js时,错误消息不出现?
我在q jQuery UI模式中有一个表单,Parsley.js无法正常工作,因为验证消息没有显示在UI上 这是我一直在使用的代码:Javascript 在jQuery UI对话框中的表单中调用Parsley.js时,错误消息不出现?,javascript,jquery,parsley.js,Javascript,Jquery,Parsley.js,我在q jQuery UI模式中有一个表单,Parsley.js无法正常工作,因为验证消息没有显示在UI上 这是我一直在使用的代码: $(function() { $('#order_push').click(function() { $('#add_contact').dialog('open'); }); $('#add_contact').dialog({ title: "Add Contact", autoOpen: false, modal
$(function() {
$('#order_push').click(function() {
$('#add_contact').dialog('open');
});
$('#add_contact').dialog({
title: "Add Contact",
autoOpen: false,
modal: true,
width: 600,
height: 300,
buttons: {
'Create': function() {
var $form = $('#contact_frm').parsley();
if ($form.isValid()) {
alert('valid');
}
}
}
});
});
以及HTML和JS协同工作的完整示例。如果你把这些字段留空,玩一下这个小把戏,你就会看到消息是如何不显示的。至少我希望我的字段在无效时标记为红色,在有效时标记为绿色。差不多
我错过什么了吗?您正在呼叫的
是有效的。文档说明(粗体!):
isValid:不影响用户界面,也不触发事件
您想调用validate({force:true})
(或者在进行异步验证时调用whenValidate
)您正在调用的isValid
。文档说明(粗体!):
isValid:不影响用户界面,也不触发事件
您想调用validate({force:true})
(或者在进行异步验证时调用whenValidate
)在的答案上运行,该答案应该是可接受的,因为它解决了主要问题
关于评论中的第二个问题:
只需添加以下内容,它针对欧芹错误消息元素:
if($form.on('form:error')){
$(".parsley-errors-list").prev().addClass("error");
}
这个CSS:
.error{
border:2px solid red;
}
现在要删除keyup
上的错误类:
$("input").on("keyup",function(){
$(this).removeClass("error");
});
您应该花点时间阅读…
;) 根据的答案运行,这应该是被接受的答案,因为它解决了主要问题
关于评论中的第二个问题:
只需添加以下内容,它针对欧芹错误消息元素:
if($form.on('form:error')){
$(".parsley-errors-list").prev().addClass("error");
}
这个CSS:
.error{
border:2px solid red;
}
现在要删除keyup
上的错误类:
$("input").on("keyup",function(){
$(this).removeClass("error");
});
您应该花点时间阅读…
;) 感谢您提供一个工作示例!感谢您提供一个工作示例!这使得它可以工作,但我如何在输入上实现好的颜色有效或无效?我已经做了另一个例子,注意字段如何无效,但我无法使输入着色,我做错了什么?这让它工作起来,看,但是我如何在输入上实现好的颜色有效或无效?我已经做了另一个例子,注意字段如何无效,但是我无法使输入着色,我做错了什么?