我有一个保存按钮,当点击时,会创建一个新的用户,并包含所有必要的字段。如果点击多次,就会创建多个用户。我想做的是,一旦点击保存按钮,检查所有的 RequiredFieldValidators 是否已经被验证(也就是:所有的必填字段都有数据),一旦发生这种情况,我想禁用保存按钮。我所面临的问题是,我不知道如何在页面上的所有 "所需字段验证器 "上设置一个条件。此外,我的SaveButton已经调用了一个函数来清除所有的 "required "标签,所以这仍然需要进行。
以下是我的按钮
<asp:Button ID="cmdSubmit" CssClass="btn btn-success btn-xs filterbutton" Text="Save" runat="server" ValidationGroup="DemoSummary" CausesValidation="true" OnClientClick="ClearRequiredTag();" />
这就叫
function ClearRequiredTag() {
var list = document.all;
for (var i = 0; i < list.length; i++) {
list[i].setAttribute("RequiredTag", 'false');
}
}
这就是运行所有的 RequiredFieldValidators 的地方。
到目前为止,我已经试过了,但是没有用,因为ClearRequiredTag()会返回true,所以我想检查所有的RequiredFieldValidators。
<script>
$(document).ready(function () {
$("#<%=cmdSubmit.ClientID%>").click(function () {
if (ClearRequiredTag()) {
$("#<%=cmdSubmit.ClientID%>").hide();
}
else {
$("#<%=cmdSubmit.ClientID%>").show();
}
});
});
</script>
为了检查RequiredTag属性的值,使用这个jquery选择器。https:/api.jquery.comattribute-equals-selector。 来选择所有具有 RequiredTag 属性的输入,然后使用 https:/api.jquery.comjquery.each。 循环浏览它们,并获取每个值的val()。如果它们都有值,则禁用提交按钮并继续。