在Postback之后,至少需要5个文本框中的1个

时间:2013-09-19 06:07:31

标签: asp.net c#-4.0 postback requiredfieldvalidator

我有1个复选框和5个文本框。

当我选中复选框时,至少需要5个文本框中的1个(5个中的任意一个)。

请帮助:(

谢谢。

3 个答案:

答案 0 :(得分:0)

例如,使用require字段验证器。 看看这个(还有一个例子):http://www.w3schools.com/aspnet/control_reqfieldvalidator.asp

答案 1 :(得分:0)

    <body>
        <form id="form1" runat="server">
        <div>
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox1" Enabled="false" ErrorMessage="RequiredFieldValidator"></asp:RequiredFieldValidator> 
            <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
            <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
            <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
            <asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
            <asp:CheckBox ID="CheckBox1" Text="Click me"  runat="server" />
            <asp:Button ID="Button1" runat="server" OnClientClick="Required()" 
                Text="Button" onclick="Button1_Click" />
        </div>
        </form>
    </body>
    </html>
    <script type="text/javascript">

        function Required() {
            //debugger;
            var checkboxId = $("#CheckBox1");
            if (checkboxId != null) {
                if (checkboxId[0].checked) {
                    if ($("#TextBox1").val() == "" && $("#TextBox2").val() == "" && $("#TextBox3").val() == "" && $("#TextBox4").val() == "" && $("#TextBox5").val() == "") {
                        EnableValidator("RequiredFieldValidator1");
                    }
                    else {
                        DisableValidator("RequiredFieldValidator1");
                     }

                }

            }
        }

        function EnableValidator(id) {
            if ($('#' + id)[0] != undefined) {
                ValidatorEnable($('#' + id)[0], true);
                $('#' + id).hide();
            }
        }

        function DisableValidator(id) {
            if ($('#' + id)[0] != undefined) {
                ValidatorEnable($('#' + id)[0], false);
            }
        }


    </script>


Here is complete sample.. Hopefully this will help

答案 2 :(得分:0)

如果您想在客户端进行此操作,请使用 javascript

只需检查是否选中了复选框,则文本框值不应为null。一些代码就是这样。

<script>
function(){
var check = document.getElementById('yourcheckbox');
if (check.checked){
var check = document.getElementById('yourtextbox1');
if (check.value.trim()==""){
alert("your error message for textbox here");
return false;
}
else{
return true;
}
}
else{
alert("your error message for checkbox here");
return false;
}
};
</script>

希望这会给你一些帮助:D