Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 按钮事件后未检查单选按钮_C#_Asp.net_Visual Studio 2012_Radio Button - Fatal编程技术网

C# 按钮事件后未检查单选按钮

C# 按钮事件后未检查单选按钮,c#,asp.net,visual-studio-2012,radio-button,C#,Asp.net,Visual Studio 2012,Radio Button,我的应用程序中有一个奇怪的错误,我有四个单选按钮: <input type="radio" name="chkWorkOrderStatus" id="chkOK" runat="server" value="1" /> <input type="radio" name="chkWorkOrderStatus" id="chkNcUseAsIs" runat="server" value="2"/> <input type="radio" name="chkWork

我的应用程序中有一个奇怪的错误,我有四个单选按钮:

<input type="radio" name="chkWorkOrderStatus" id="chkOK" runat="server" value="1" />
<input type="radio" name="chkWorkOrderStatus" id="chkNcUseAsIs" runat="server" value="2"/>
<input type="radio" name="chkWorkOrderStatus" id="chkNcRework" runat="server" value="3" />
<input type="radio" name="chkWorkOrderStatus" id="chkNcAndStop" runat="server" value="4" />
尽管当我将鼠标悬停在断点上时,选中状态为true,但当在屏幕上呈现控件时,不会选中任何控件,尽管在单击“保存”按钮之前,至少会选中其中一个。 我还注意到,例如,当我在页面加载事件中选中其中一个复选框等于true时,复选框被选中。 知道我做错了什么吗?由于某些原因,选中的事件在该按钮事件之后重置。
提前感谢,laziale

在您的活动中,页面将再次发回并加载。所以,它回到初始状态,没有检查任何收音机。如果您在页面加载中选中一个,则在页面加载时会发生这种情况(因此您的事件),并且您会选中一个单选按钮。单击按钮并将页面发回后,单选按钮的先前选中状态是否会消失?可以发布按钮的单击事件吗?如果创建了asp hiddenfield,然后创建了onclick子例程serverside,以在单击单选按钮时更改hiddenfield的值,会怎么样?您可以只引用一次隐藏字段来获取值,而不是通过单选按钮循环。但最后,我认为您的问题可能是所选选项在页面生命周期中过早地自行清除。检查page_init中的radiobutton值,看看是否得到相同的结果。请记住,执行此方法后,将触发page_加载。如果(!IsPostback),请确保您的
页面\u Load
位于
的内部,这样就不会将复选框重新加载到不需要的状态。
  public void checkForAsBuiltData(int asBuiltOperationId)
    {
        if (asBuiltOperationId != 0)
        {
            DataSet ds = Assembly.GetAsBuiltData(asBuiltOperationId);
            if (ds != null)
            {
                string status = "", nctext = "";
                status = ds.Tables[0].Rows[0]["Status"].ToString();
                nctext = ds.Tables[0].Rows[0]["NCText"].ToString();
                if (status != string.Empty)
                {
                    if (status.Equals("1"))
                    {
                        chkOK.Checked = true;
                    }
                    else if (status.Equals("2"))
                    {
                        chkNcUseAsIs.Checked = true;
                    }
                    else if (status.Equals("3"))
                    {
                        chkNcRework.Checked = true;
                    }
                    else if (status.Equals("4"))
                    {
                        chkNcAndStop.Checked = true;
                    }
                }
                if (nctext != string.Empty)
                {
                    txtNonConfText.Value = nctext;
                }
            }
        }        
    }