我正在JavaScript文件中使用jquery验证来验证如果客户端出现问题,我的ValidationMessageFor将被触发。
开始时,将启动一个加载面板。如果显示验证消息等,我试图停止加载面板。
我进入了jquery.validate.obstruive.js文件,并添加了以下代码,但是它没有触发或击中代码:
function onError(error, inputElement) { // 'this' is the form element
var container = $(this).find("[data-valmsg-for='" + escapeAttributeValue(inputElement[0].name) + "']"),
replaceAttrValue = container.attr("data-valmsg-replace"),
replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) !== false : null;
container.removeClass("field-validation-valid").addClass("field-validation-error");
error.data("unobtrusiveContainer", container);
if (replace) {
container.empty();
error.removeClass("input-validation-error").appendTo(container);
// Added to turn off loading indicator if there is an error...
$(".loadingIndicator").css('visibility', 'hidden');
}
else {
error.hide();
}
}
这是我用来停止加载面板的代码:
// Added to turn off loading indicator if there is an error...
$(".loadingIndicator").css('visibility', 'hidden');
我希望一旦jquery.validate ...代码触发并看到我没有设置必填字段,或者我在数字文本字段中输入字母字符,那么我希望加载面板停止。
答案 0 :(得分:0)
感谢大家的帮助。
我的代码在设置方式上正常工作。
有一次我们要使用Dev Express中的复选框。
该复选框已删除,但未引用加载Dev Express脚本。
Dev Express文件(而不是我们的本地文件)触发了jquery非侵入式验证-在这里,我更改了代码以在显示验证客户端等情况下停止加载面板。
现在一切正常。
希望这会对某人有所帮助。