最近项目的前端使用了jQuery,表单的前端验证用的是jQuery Validate,用起来很简单方便,一直都很满意的。
前段时间,根据需求为表单中的 textarea 类型的元素加上了html富文本编辑器,用的是CKEditor,功能强大,定制方便,也很满意。
不过用CKEditor增强过的 textarea 元素,这个字段要求是非空的,在jQuery Validate总是验证不通过,原因就是在 CKEditor 编辑器填写了内容之后,编辑器并不是立即把内容更新到原来的 textarea 元素中的,我没仔细看源代码,试过一种情况就是每一次提交不通过,第二次提交就可以通过的,貌似编辑器是在 submit 事件之前把编辑器的内容更新到 textarea 中的(这个是猜测,不知道对不对,我对jQuery 和 CKEditor 都不太熟悉,算是拿来就用,有问题就放狗的那种)。
于是在网上找到了解决问题的代码,代码不是我写的,我只是记录一下我遇到的问题,代码非原创。原理就是当编辑器更新了内容之后,立即把内容更新到 textarea 元素。
原文链接
http://stackoverflow.com/questions/1908592/jquery-validation-plugin-ckeditor-validate-when-typing
CKEDITOR.instances["page_content"].on("instanceReady", function()
{
//set keyup event
this.document.on("keyup", updateTextArea);
//and paste event
this.document.on("paste", updateTextArea);
});
function updateTextArea()
{
CKEDITOR.tools.setTimeout( function()
{
$("#page_content").val(CKEDITOR.instances.page_content.getData());
$("#page_content").trigger('keyup');
}, 0);
}
目前一切使用正常,算是解决了一个让我头痛的问题,由此也可以看到,我在Javascript上还得多下些功夫,水平实在是不怎么样啊。
分享到:
相关推荐
2 remote:"check.php" 使用 ajax 方法调用 check.php 验证输入值。 3 email:true 必须输入正确格式的电子邮件。 4 url:true 必须输入正确格式的网址。 5 date:true 必须输入正确格式的日期。日期校验 ie6 出错,慎...
### CKEditor无法验证的解决方案(js验证+jQuery Validate验证) #### 问题背景 在实际项目开发过程中,我们经常需要使用富文本编辑器来增强用户体验。CKEditor是一款非常强大的富文本编辑器,它提供了丰富的功能...
jQuery Validate 是一个强大的JavaScript验证库,它为网页表单提供了灵活且易于使用的验证功能。这个框架可以帮助开发者轻松地实现对用户输入数据的有效性检查,确保数据的准确性和完整性,从而提高用户体验并减少...
非常好的Jquery validate:每个案例独立,都有注释 讲解了: 环境搭建 常见验证方法配置 国际化错误消息 自定义方法和远程验证 给验证添加 图标效果
本文的配套文档包括《jquery-validate验证框架使用详解.doc》和《jquery.validate.addMethod.doc》,详细解释了框架的使用和自定义方法的创建。同时,提供的`validate.js`和`jquery.validate.zip`文件包含了完整的...
总之,jQuery Validate插件提供了一个强大且灵活的框架,用于创建自定义验证样式。通过理解其内部机制并结合CSS和JavaScript,你可以为你的Web应用构建出符合品牌风格和用户体验的验证功能。在实践中不断探索和优化...
jQuery Validate 是一个强大的客户端验证插件,用于在用户提交表单前进行实时验证。这个框架大大简化了HTML表单的验证过程,提供了丰富的内置验证规则和可扩展的自定义验证功能,使得表单验证更加人性化和高效。 1....
《jQuery Validate验证手册》是针对JavaScript库jQuery的一个插件,主要功能是提供强大的表单验证功能,帮助开发者创建用户友好的、功能丰富的交互式表单。这个插件基于jQuery库,利用JavaScript的强大功能,简化了...
解决jquery validate remote 只验证一次的问题
### jQuery验证框架内置验证方法validate #### 一、概述 jQuery验证框架,即`jquery.validate.js`,是一款非常实用的JavaScript库,它为Web开发者提供了简单而强大的客户端表单验证功能。通过使用此插件,可以轻松...
然而,在实际开发过程中,开发者们可能会遇到使用CKEditor时无法与前端验证框架(如jQuery Validate)协同工作的问题。 问题的关键在于CKEditor的内容并不直接存储在页面的textarea元素中,而是通过JavaScript操作...
首先,`jquery.js`是jQuery的核心库,它是jQuery Validate的基础,没有它,我们无法使用jQuery Validate。确保引入了最新的jQuery版本,以便利用其强大的DOM操作和事件处理能力。 其次,`myvalidate.js`可能是你...
《jQuery Validate 前台验证框架的详细使用指南》 jQuery Validate 是一款广泛使用的JavaScript库,专门用于在前端进行表单验证。它为HTML表单提供了强大的、易于使用的验证功能,能够有效地提升用户体验,确保用户...
包含以下文件: additional-methods.js additional-methods.min.js jquery.validate.js jQuery.validate.js+API中文.pdf jquery.validate.min.js
《jQuery表单验证框架——深入理解jQuery.validate》 在网页开发中,表单验证是必不可少的一环,它能确保用户输入的数据符合预期,减少服务器端的处理负担,提高用户体验。jQuery是一个广泛使用的JavaScript库,而...
jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求。该插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证,同时提供了一个用来...
除了基本的验证规则,jQuery Validate还支持自定义验证方法。例如,你可以创建一个检查密码强度的方法: ```javascript jQuery.validator.addMethod("passwordStrength", function(value, element) { // 这里实现...
总的来说,这个压缩包提供了实现中文表单验证所需的全部资源,包括jQuery库、jQuery Validate插件以及中文错误消息文件,使得开发者能够方便地为网页表单添加功能强大且易于理解的验证机制,提高用户体验。
首先,使用`jQuery Validate`需要引入相关的文件,包括`jquery.validate.js`作为核心验证框架,`additional-methods.js`包含了一些额外的验证方法,`messages_cn.js`用于本地化消息,以及`jquery.validate.css`定义...