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

本文关键字:自定义 验证 CheckBox TextBox | 更新日期: 2023-09-27 17:50:47

我有一种情况,如果用户在文本框中输入了一个值,但没有选中复选框,我需要检查按钮单击。需要提醒的是,如果不先勾选复选框,则不能在文本框中输入值。我知道我需要使用一个CustomValidator控件,但除此之外,我迷路了。有人能帮我吗?

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

在OnClientClick事件中,你可以调用一个javascript方法来为你做这个验证。

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

然而,如果您想对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";
}

您可以使用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');
}
}

你可以试试这个…

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

<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>

如果您满意,请随意标记为答案....