c# - 单选按钮未更新服务器端的值

标签 c# javascript asp.net

我的表单中有 3 个单选按钮,它们都是单个组的一部分。单击其中一个非默认单选按钮时,它们会在客户端正确更新(取消选择上一个单选按钮并选择新的单选按钮)。我什至将 OnClientClick 附加到提交表单的按钮以对其进行测试,并且在提交表单之前,.checked 值是正确的。但是在服务器端到达的第一行代码会检查这些值,同样是为了测试目的,但 .checked 值没有改变。默认还是根据服务器检查。

这是我的一些相关代码:

ASP

<asp:RadioButton runat="server" ID="rdoDays" Text=" Days" GroupName="RepeatType" />
<asp:RadioButton runat="server" ID="rdoMonths" Text=" Months" GroupName="RepeatType" />
<asp:RadioButton runat="server" ID="rdoYears" Text=" Years" GroupName="RepeatType" />

<asp:Button runat="server" ID="btnSaveAlert" OnClick="btnSaveAlert_OnClick" 
     Text="Save" OnClientClick="Test()" />

Javascript - 单击月份时,JavaScript 会按照应有的方式在警报框中显示“False”,然后显示“True”。

function Test() {
    var rdoDays = document.getElementById("<%= rdoDays.ClientID %>");
    var rdoMonths = document.getElementById("<%= rdoMonths.ClientID %>");
    var rdoYears = document.getElementById("<%= rdoYears.ClientID %>");
    alert(rdoDays.checked);
    alert(rdoMonths.checked);
}

然后对于C#,我在Page_Init的最开始处在VS中设置了一个断点,并且单选按钮.checked值都是“false”

我不知道发生了什么。我是否缺少 asp 元素中的标签或其他内容?非常感谢任何帮助。

最佳答案

Viewstate 在 OnInit 和 OnLoad 之间加载。尝试检查页面的 OnLoad 事件中是否选中了单选按钮。

关于c# - 单选按钮未更新服务器端的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13997556/

相关文章:

c# - Xamarin 网格和 StackLayout

asp.net - Linq 按子表排序

asp.net - 如何让远程 JSON 与 ASP.NET 中的 Kendo 网格配合使用

c# - 如何使用c#创建文件夹并在其中保存文件

c# - 打破这个字符串的更有效/更整洁的方法是什么?

c# - 比较 MbUnit 中相同的两个对象

javascript - Javascript 中的 click 函数出现错误

javascript - 显示由数组填充并按另一个数组排序的表

javascript:如何检查是否在上下文菜单新选项卡上单击了链接

c# - 在没有回发的情况下重置 ASP.NET 中的页面