需要有关单选按钮的javascript帮助吗

需要有关单选按钮的javascript帮助吗,javascript,asp.net,radio-button,Javascript,Asp.net,Radio Button,我想在第二次单击radiobutton时禁用它。我想在头部添加一些代码。当第二次单击radiobutton时,它不再被标记 我想在每次单击时选中和取消选中radiobutton 注意:我动态生成20个单选按钮 考虑到它是在服务器上运行的单选按钮: http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.radiobutton.aspx 更新:这是在=服务器上运行RadioButton asp WebControl的唯一

我想在第二次单击radiobutton时禁用它。我想在头部添加一些代码。当第二次单击radiobutton时,它不再被标记

我想在每次单击时选中和取消选中radiobutton

注意:我动态生成20个单选按钮

考虑到它是在服务器上运行的单选按钮:

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.radiobutton.aspx
更新:这是在=服务器上运行RadioButton asp WebControl的唯一事件:

    protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
    var rad = (CheckBox)sender;
    if (rad.Checked)
    {

        rad.Checked = false;
    }
}

我可以在每次回发后取消选中它。但是,除非回发没有发生,否则我无法选择和取消选择它。。这就是问题所在!!:

Id创建一个空数组。对于您创建的每个单选按钮,将其ID作为键添加到数组中,并将其值设置为0。这将是特定按钮的计数。每当单击radiobutton时,根据数组检查按钮ID,如果其小于2,则递增。如果没有,请禁用当前按钮

编辑:没有意识到你正在检查它是否已经被检查过,尽管这是检查的次数

$id.is:已选中

应该足够了

另一个注意事项……如果您所做的只是禁止用户访问某个元素,那么您应该在客户端处理此事件。您将使用不必要的服务器回调来实现通过javascript轻松实现的功能。使用jquery click事件处理程序,它可以非常通用,不必使用标识符,从而使工作变得更加简单


干杯

我认为你应该遵守单选按钮的标准用法,说这句话-改用复选框,如果单击了不同的复选框,则清除所有复选框…因此,当第二次单击复选框时,标准取消选中将出现

如果我没弄错的话 你所需要的只是一个标志属性,表示你点击单选按钮的次数,每次点击单选按钮时,该属性增加1,如果是第二次点击,则每次点击都检查该属性,然后禁用该单选按钮

所以你需要像这样生成你的单选按钮

<input type='radio' onclick='radioClick(this);' how_many_clicked='0' id='whatever id u need' name='whatever name u need' />

第二次单击是否仍应选择单选按钮,但同时禁用?在那之后你还可以点击其他单选按钮吗?或者,当您说它不再被标记时,您的意思是想在第二次单击时取消选中它吗?注意:禁用的表单元素不会被提交。是否确实要禁用它以使其无法被选择,并且其值不会随表单一起传回,请删除该单选按钮的选择,或者两者都有?除非你在用户取消选择时自动选择另一个单选按钮,否则你应该改为使用复选框。我希望能够通过单击来选择和取消选择。我不想使用复选框。你尝试了什么吗?请在此处发布代码。没有简单的代码。。。。onclick=checkIFchecked问题是我有一个onclick事件…因为它是一个asp.net控件,我不知道是否可以在客户端站点上添加另一个onclick事件等等,为什么你被否决了,这正是我应该做的!radioButton未点击事件..查看更新的问题。。事件列在链接按钮中。。。六羟甲基三聚氰胺六甲醚。。我不按传统的方式做这件事。。按钮也是通过编程生成的。RadioButton rb=新的RadioButton。。我没有RadioButton的标签Haa好的,很抱歉没有理解我的意思是没有将其添加为标签我的意思是用你的代码添加onclick事件和附加属性我将再次查看q并查看它Thanxaaaaaaaaaaaaaaaah我了解你现在在服务器端添加你的单选按钮查看此链接中的事件:你看到任何onclick吗点击事件?!?!?我不知道!然后在页面的头部添加我给你的函数,并将onclick作为一个属性添加到服务器代码和属性中
   function radioClick(e) {

    var flag = e.getAttribute('how_many_clicked');
    var times = Number(flag);
    times += 1;
    e.setAttribute('how_many_clicked', times.toString())
    if (times > 1) {
        e.checked = false;
        e.setAttribute('how_many_clicked', "0");
    }
    else {
        e.checked = true;
    }
}