TextBox具有值时自定义验证,而CheckBox没有

时间:2014-03-18 19:15:15

标签: c# javascript asp.net validation

如果用户在文本框中输入了值,但是没有勾选复选框,我需要检查按钮单击。他们需要被告知,如果没有先选中复选框,他们就无法在文本框中输入值。我知道我需要使用CustomValidator控件,但除此之外我已经丢失了。任何人都可以帮助我吗?

4 个答案:

答案 0 :(得分:1)

在OnClientClick事件中,您可以调用一个javascript方法,它将为您执行此验证。

这应该指向正确的方向。

答案 1 :(得分:1)

我认为最简单的方法是根据复选框是否已选中启用/禁用文本框。

但是,如果您想对button_click进行检查,可能只需检查checkboxtextbox?并将错误信息输出到标签或其他什么?

if(TextBox1.Text.Trim() != "")
    if(!CheckBox1.Checked)
        label1.Text = "Checkbox needs to be checked";

或者,您可以在TextBox1.Text发生变化时进行检查。

private void Textbox1_TextChanged(object sender, EventArgs e)
{
    if(!CheckBox1.Checked)
        label1.Text = "Checkbox needs to be checked";
}

答案 2 :(得分:0)

您可以使用javascript / Jquery实现此功能。按下按钮的onClientClick属性,如下所示:

<asp:Button ID="btnSubmit" runat="server" onClientClick="ValidateData();"/>

以下是jquery代码:

function ValidateData()
{
if(!$('#checkboxID').is(':checked') && $.trim($('#textBoxID').val())!='')
{
alert('Please check the checkbox before entering text');
}

}

答案 3 :(得分:0)

你可以试试这个......

首先你必须有这样一个按钮......

<asp:Button ID="btnCheck" runat="server" CssClass="m-btn purple" Text="Check" onclintclick="Validate()"/>

现在我们可以编写验证脚本......

<script type="text/javascript" language="javascript">
        function Validate() {

            if(document.getelementid('checkbox1').checked==true)
            {
              if(document.getelementid('Textbox1').value=="")
              {
               //Write your code here..
              }  
            }
            else
            {
               alert('Please check the checkbox..');
            }
        }
  </script>

如果它满足你,请随时标记为答案....