如何在复选框之间切换.如果选中了checkbox1.取消选中复选框x2

本文关键字:复选框 x2 checkbox1 取消 之间 如果 | 更新日期: 2023-09-27 18:29:23

我有一个调查风格的网页,上面有一系列复选框"是/否",最后有一个提交按钮。当选择框1时,我想取消选中框2。

    protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
    {
        if (CheckBox1.Checked == true)
        {
          CheckBox2.Enable = false;
        }
    }
    public void Submit_Click(object sender, EventArgs e)
    {
    //Question1 - Checkbox1
        if (CheckBox1.Checked == true)
        {
            SqlConnection con = new SqlConnection("");
            String sql = "UPDATE INQUIRY2 set Question1 = @str WHERE email = @email AND base = @base;";
            ...
        }

如何在复选框之间切换.如果选中了checkbox1.取消选中复选框x2

这里有几点需要注意。。。

  • 在ASP.NET环境中,只有完成回发后,复选框的CheckChanged事件才会激发
  • 其次,您可能希望使用RadioButtonList来管理这种行为(尽管不一定)

在第一种情况下,也就是说,您不能期望事件在复选框状态更改后立即触发,只有在表单提交后才触发,无论是自动使用AutoPostBack还是手动使用Button

在第二种情况下,如果这些项目被分类在一个组中,单选按钮将很有用,但如果它们只是在一个没有其他关联的表单上互斥值,则就不那么有用了。唉,我们也许可以判断你是否给控件起了有意义的名字。

不管怎样,在这里还有其他几件事。你不需要在条件中显式地声明可比较的布尔值-假设属性的名称有点合适,它就说明了if (CheckBox.Checked) { }是什么。此外,SqlConnection是一个可丢弃的东西,从你的例子中还不清楚你是否正确地关闭或处理了实例,所以我会检查你是否这样做了。