防止基于 "所需字段验证器 "的多次保存点击。

问题描述 投票:0回答:1

我有一个保存按钮,当点击时,会创建一个新的用户,并包含所有必要的字段。如果点击多次,就会创建多个用户。我想做的是,一旦点击保存按钮,检查所有的 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>
javascript jquery asp.net webforms requiredfieldvalidator
1个回答
0
投票

为了检查RequiredTag属性的值,使用这个jquery选择器。https:/api.jquery.comattribute-equals-selector。 来选择所有具有 RequiredTag 属性的输入,然后使用 https:/api.jquery.comjquery.each。 循环浏览它们,并获取每个值的val()。如果它们都有值,则禁用提交按钮并继续。

© www.soinside.com 2019 - 2024. All rights reserved.