Javascript 未通过jQuery验证验证的ckeditor数据
我知道关于这件事有很多问题,但我不能让它在我的生活中起作用。我尝试了几种解决方案,包括和,但我无法显示“必需”消息。当ckeditor字段为空时,表单仍然提交 我查看了文档,能够将编辑器的内容传递给警报,但经验不足,不知道如何将其与验证插件集成。我在这上面花了这么多时间,有人能帮我吗 这是我当前的代码,我创建了一个小提琴:Javascript 未通过jQuery验证验证的ckeditor数据,javascript,jquery,html,css,validation,Javascript,Jquery,Html,Css,Validation,我知道关于这件事有很多问题,但我不能让它在我的生活中起作用。我尝试了几种解决方案,包括和,但我无法显示“必需”消息。当ckeditor字段为空时,表单仍然提交 我查看了文档,能够将编辑器的内容传递给警报,但经验不足,不知道如何将其与验证插件集成。我在这上面花了这么多时间,有人能帮我吗 这是我当前的代码,我创建了一个小提琴: 您应该更改默认情况下保存:hidden值的ignore属性的值。由于CKEDITOR隐藏了textarea,jQuery验证不会验证元素: ignore: [] 还请注
您应该更改默认情况下保存
:hidden
值的ignore
属性的值。由于CKEDITOR
隐藏了textarea,jQuery验证不会验证元素:
ignore: []
还请注意,您应该在required
方法中返回一个布尔值,而不是。这里传递true
就足够了
required: true
这是更新的代码,它还使用errorPlacement
方法将边框添加到CKEDITOR包装中,您可以根据需要进行自定义:
$(document).ready(function () {
$('#add-job').validate({
rules: {
'editor1': {
required: true
}
},
messages: {
Job_Title: "Required",
Job_Location: "Required",
jobid: "Required",
Job_Cat: "Required",
editor1: "Required"
},
errorPlacement: function(error, $elem) {
if ($elem.is('textarea')) {
$elem.next().css('border', '1px solid red');
}
},
ignore: []
});
});
这里是更新您的代码与此
希望这能起作用我在JSFIDLE中测试了它,运行良好刚刚完成测试,它能起作用!非常感谢much@surfbird0713 Welcome@shrawan_lakhe欢迎,但如果文本区域触摸正确,它不会调用?我们必须手工编辑吗?
$(document).ready(function () {
$('#add-job').validate({
rules: {
'editor1': {
required: true
}
},
messages: {
Job_Title: "Required",
Job_Location: "Required",
jobid: "Required",
Job_Cat: "Required",
editor1: "Required"
},
errorPlacement: function(error, $elem) {
if ($elem.is('textarea')) {
$elem.next().css('border', '1px solid red');
}
},
ignore: []
});
});
$(document).ready(function() {
$('#add-job').validate({
ignore: [],
rules: {
editor1: {
required: function()
{
CKEDITOR.instances.editor1.updateElement();
}
}
},
messages: {
Job_Title: "Required",
Job_Location: "Required",
jobid: "Required",
Job_Cat: "Required",
editor1: "Required"
},
/* use below section if required to place the error*/
errorPlacement: function(error, element)
{
if (element.attr("name") == "editor1")
{
error.insertBefore("textarea#editor1");
} else {
error.insertBefore(element);
}
}
});
});