jQuery Validator插件-函数中的触发器
jQuery Validator Plug In - trigger from within a function
我在验证加载文档后通过AJAX加载的长表单时遇到问题。使用标准的验证语法,验证器在文档存在之前就在文档中查找我的表单,因此会给我一个错误:
$(document).ready(function(){
$("#mainForm").validate();
});
firebug回应:
nothing selected, can't validate, returning nothing
我试着把$("mainForm").validate();
放在一个函数中,然后用表单中的onSubmit事件调用该函数,但没有成功:
function validate() {
$("mainForm").validate();
};
----------
<form id="mainForm" onSubmit="validate();">
...
</form>
想法?
@Chris的一些额外信息:
我有一个基于许多不同模块动态创建表单的页面。用户选择适用于他们的模块,然后用这些信息更新表单以填写。因此,当用户单击链接加载模块时,会调用loadSection();
函数。这就是loadSection();
函数的样子:
function loadSection(id, div, size, frame) {
var url = "loadSection.php?id=" + id + "&size=" + size + "$frame=" + frame;
$.get(url,
function(data){
$(div).append(data);
});
}
如果我放入`$(#mainForm).validate();'在这个函数的回调中,它有可能在每次插入新模块时被调用。这可能是好的,也可能是坏的,我不确定如何在同一个表单上多次调用验证,即使表单的字段已经更改。
想法?
您很可能已经解决了问题。如果表单在document.ready()的DOM中不存在,那么将不绑定任何内容。
由于您使用的是JQuery,我认为该表单是使用JQuery$.ajax(或类似的)函数添加的。最简单的解决方案就是将$("#mainForm").validate();
添加到AJAX请求的回调函数中。如果您没有使用JQUery ajax,请发布添加表单的代码,我们可以进一步帮助您。
您必须将元素的类定义指定为required
,以便它验证表单中的特定元素。但我想您没有它,所以它是这样显示的。
例如,如果您想验证电子邮件:
<p>
<label for="cemail">E-Mail</label>
<em>*</em><input id="cemail" name="email" size="25" class="required email" />
</p>
"mainform"
中的一个简单错误不是有效的选择器。如果是ID ,则添加"#"前缀
EDIT:还要注意,您有另一个内联的验证调用,删除那个
相关文章:
- 如何在更新面板内部调用/触发javascript函数<触发器>标签
- 从 blob 加载视频预览时的 Jquery 触发器函数
- 为什么当我使用初始化触发器函数时,我总是找不到脚本函数:发送发票如果新
- 我可以使用一个函数让所有复选框都被选中或取消选中吗(不使用点击触发器)
- Qinit触发器函数在JQuery DatePicker上不起作用
- 通过事件触发器/按钮单击将参数传递给 javascript 函数
- 有什么方法可以放置一个触发器来在 CodeIgniter 的控制器函数中切换引导模式
- 我应该返回假吗?每个需要触发器的函数
- 使用 jQuery 循环设置事件函数触发器
- JQuery :添加具有绑定/打开和触发器函数的确认处理程序
- 如何使用jquery从文本框中获取数据和触发器函数
- 如何使onEdit()触发器函数应用于多个工作表
- 基于类更改的触发器函数
- 针对特定ajax调用的全局$.ajax事件的触发器函数
- iframe重定向之前的触发器函数
- 防止同一个触发器函数执行两次的最好方法是什么?
- JavaScript用onClick does 't触发器函数生成HTML
- jquery触发器函数不工作,没有错误,也没有正确的结果
- 通过参数将php变量传递给javascript触发器函数PHP,JAVASCRIPT
- jQuery触发器函数是否保证是同步的?