Jquery验证插件是否需要表单标签?
我想用http://docs.jquery.com/Plugins/Validation中的jQuery Validation插件验证一些asp.net文本框,但看起来这些元素必须在表单标签之间。 如果我只有几个元素,我几乎不会将它称为一个表单,所以我宁愿不将它们包装在表单元素中。 有没有解决的办法? 另外,如果我在表单上有两个按钮,一个取消按钮和一个提交按钮,并且我希望表单仅在单击提交按钮时进行验证,而不是取消按钮,这是如何实现的?
我只有几个元素,我几乎不会将它称为表单,所以我宁愿不让它们包裹在表单元素中。
如果这些元素不在一个表单标签内,那么它不是一个有效的HTML文档,因此脚本内的行为可能会变得不稳定,这取决于浏览器如何处理格式错误的HTML。
大多数浏览器都会隐式创建一个表单,但现在您无法控制表单的行为。 默认值通常是针对所请求网页网址的发布操作表单。
问题是,您可能不知道在JQuery中使用什么选择器来获取对表单的引用......但是我认为$("form")
可以解决这个问题。
验证提交按钮被点击时,但不是取消按钮
插件拦截并运行表单的提交事件。 通常,取消按钮是类型属性设置为“重置”的html输入元素:
<input type="reset" value="cancel" />
重置类型按钮不会导致表单提交,并且这不会触发验证。
如果您使用其他按钮类型,请确保onclick甚至返回false。 这取消了表单的提交动作,但仍允许您在单击按钮时运行自己的javasctipt。
jquery validate插件需要一个表单元素才能运行,所以你应该在表单中包含你的表单字段(不管有多少)。
您可以告诉验证插件不要在表单提交中操作,然后在单击正确的提交按钮时手动验证表单。
例如,使用一个类来识别正确的提交按钮:
$(document).ready(function() {
var form = $("form");
form.validate({
onsubmit: false,
});
//Validate form only if validation submit button is clicked
//Allows cancel submit buttons to function properly
$('.validate', form).click(function() {
if (form.valid()) {
form.submit();
}
else {
form.validate().form();
}
});
});
链接地址: http://www.djcxy.com/p/44137.html
上一篇: Does the Jquery validation plugin require a form tag?
下一篇: Problem when using python logging in django and unicode