我创建此表单(.net),我有一个选择与回发,这将触发一个动作,取决于我选择哪个选项。我试图使用jQuery验证插件(plugin website)来验证我的表单。jQuery验证插件覆盖我的选择onChange回发
我的问题是,当我验证表单,并且我的选择被标记为无效时,验证插件覆盖它的onChange方法,使其无效,当我更改值时,事情是它正在从onchange中删除我的__dopostback ,使形式'无用'。
有没有办法让插件验证我的选择而不删除我的onchange回发动作?
我创建此表单(.net),我有一个选择与回发,这将触发一个动作,取决于我选择哪个选项。我试图使用jQuery验证插件(plugin website)来验证我的表单。jQuery验证插件覆盖我的选择onChange回发
我的问题是,当我验证表单,并且我的选择被标记为无效时,验证插件覆盖它的onChange方法,使其无效,当我更改值时,事情是它正在从onchange中删除我的__dopostback ,使形式'无用'。
有没有办法让插件验证我的选择而不删除我的onchange回发动作?
我知道这是一个旧帖子,但我有类似的情况,并能够像这样解决它。只是以为我会发布它,以防万一有人在这里找到方法。我使用jQuery验证插件1.9.0:
$('#aspnetForm').validate({
errorLabelContainer: "#messageBox",
wrapper: "li"
});
$("input[id$='myButton']").click(function() {
SetRules();
if ($('#aspnetForm').valid()) {
// form passed validation
} else {
$('#aspnetForm').resetForm();
return false;
}
});
function SetRules(){
$("select[id$='myDropDown']").rules("remove");
$("select[id$='myDropDown']").rules("add", {required:true});
}
我的验证器设置,以便在错误的一个指定格一起显示。当我点击按钮时,验证会触发并显示该div中的所有元素并标记无效的字段,包括select(所有选项都是红色的),并且当我更改选择时,我的自动回复会触发并且选择的颜色改回旧的价值(假设选择通过了验证)。
我很喜欢这个插件,所以我不能很好地解释它,但我的思考过程是尝试获取窗体来验证并显示错误,然后将控件重置为原始状态仍然保持错误信息可见。我期待失去突出显示的红色错误,但不知何故保留,同时也带回选择的回发。
此外,我不知道以这种方式制定规则是否有助于这项工作;由于各种原因,我不得不这样设置它们,最大的原因是需要.NET自动生成ID的选择器。
这是多么令人尴尬,我使用resetForm()实际上是不正确的...因为它在那个例子中当它碰到那条线时会抛出一个javascript错误......这讽刺地产生了期望的结果!这当然解释了为什么它没有我期望的输出......但为了实现这些结果而没有错误,保持这种行为可能是诀窍。 – Nathan 2012-03-23 22:13:37
它不会删除它...它会阻止你的'
尼克,我的提交按钮正在调用一个JS函数,其中我有所有的表单验证,它只会在我想要的时候提交表单(返回true)。我尝试从验证中排除选择字段,但在验证后仍未执行回发。 我现在有选择和一个文本框,如果文本框被jQuery验证标记为无效(空),并且我使它有效(在其中键入内容),选择仍然没有做回发时,我选择的东西。 我对这一切都很陌生,所以,如果这是显而易见的,我不明白,嘿嘿。 – 2010-05-28 13:15:14