【发布时间】:2018-08-28 21:07:49
【问题描述】:
我有一个客户需要表单上有两个按钮。一种保存未完成表格的进度的方法。所以这个表单仍然需要验证字段,但会忽略所需的验证。另一个按钮将需要运行包含必填字段的完整验证。
我正在使用股票标准 asp.net 核心项目,我相信它使用 jquery-validation-unobtrusive 并且基于视图模型。
我要做的是单击“保存进度”按钮以删除所有必需的验证并提交表单。但是,我在堆栈溢出或互联网上找到的代码都不适用于我的场景。
我试过了:
<div class="form-group">
<input id="Progress" type="submit" value="Save Progress" onclick="foo()" class="btn btn-default" />
</div>
function foo() {
$('#FamilyName').rules("remove", "required");
return true
}
和
function foo() {
var settings = $('#Registration').validate().settings;
for (var i in settings.rules) {
delete settings.rules[i].required;
}
}
上述两次尝试都成功地找到并删除了规则,但是当提交表单时,对相关字段的验证仍然失败。
我很困惑,不知道如何继续。
【问题讨论】:
-
请分享一个完整的代码示例(有服务器端代码,ViewModels 吗?)
-
澄清:我在禁用客户端验证时仍然遇到问题。我将能够处理服务器端,但我不确定为什么我无法成功禁用客户端。
标签: jquery asp.net asp.net-mvc unobtrusive-validation