【发布时间】:2011-02-14 18:24:11
【问题描述】:
我在我的大多数项目中使用 livevalidation.com 的 LiveValidation 进行一些简单和更复杂的表单验证。
主要是为了提高用户过期时间。
我做了什么。 - 将无效消息从文本替换为图像 - 提交表单时 - 无效 - 关注第一个无效的输入字段 - 提交表单时 - 无效 - 为所有无效字段添加红色边框
我正在尝试做的事情: - 创建验证表单的函数 - 但仅适用于当前选项卡
我们如何“手动”做到这一点 - 我们可以创建另一个 var automaticOnSubmit2 = field4.form.onsubmit;
其中 field4 始终是当前选项卡上的第一个输入。 因为我的标签会生成未知数量的标签 - 我正在寻找更通用的解决方案。
我做了一些尝试——但是我对 js/jquery 的了解很差——所以我失败了。
//尝试1
$(".ui-tabs-panel:not(.ui-tabs-hide) > form")
-
这是正确的 - firebug 只能找到 1 个 - 打开/当前选项卡 - 我们要验证的表单所在的位置
$(".ui-tabs-selected").ready(function() { var automaticOnSubmit = $(".ui-tabs-panel:not(.ui-tabs-hide) > form").submit; $(".ui-tabs-panel:not(.ui-tabs-hide) > form").submit = function(){ var valid = automaticOnSubmit(); if(valid)alert('Form is Valid!'); else{ $(".LV_invalid_field:first", document.forms).focus(); } return false }});
最好的问候,
彼得
【问题讨论】:
标签: jquery user-interface jquery-ui-tabs