我想在第二次单击时禁用radiobutton ..我想在头部放一些代码..当第二次点击radiobutton时,它不再标记..
我想每次点击检查并取消选中单选按钮。
注意:我动态生成20个radiobuttons
考虑到它是在服务器上运行的Radiobutton:
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.radiobutton.aspx
更新:这是RadioButton(asp WebControl在=“server”运行)的唯一事件:
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
var rad = (CheckBox)sender;
if (rad.Checked)
{
rad.Checked = false;
}
}
我可以在每个帖子后取消选中..但除非回发没有发生,我不能选择并取消选择它。这就是问题! :(
答案 0 :(得分:2)
我认为你应该继续使用RadioButtons的标准用法,比如说 - 使用 CheckBoxes ,如果点击了另一个复选框,则清除所有复选框...所以当点击一个复选框时第二次将发生标准取消选中。
答案 1 :(得分:0)
我创建一个空数组。对于您创建的每个单选按钮,将其ID作为键添加到数组中,并将其值设置为0.这将是特定按钮的计数。无论何时单击单选按钮,检查数组的按钮ID,如果小于2,则递增它。如果没有,请禁用当前按钮。
编辑:没有意识到你在检查它是否已被检查过,这是检查的次数。
。$( “#ID”)是( “:检查”)
应该足够了
另一个注意事项......如果你所做的只是禁止某个元素被用户访问,你应该在客户端处理这个事件。您将使用不必要的服务器回调来轻松实现通过javascript实现的功能。使用jquery click事件处理程序,它可以是通用的,不必使用标识符,使工作更容易。
干杯
答案 2 :(得分:0)
如果我告诉你的话 你需要的是你点击单选按钮多少次的标志属性,每次你点击收音机时属性增加1,如果是第二次,每次点击检查属性,然后禁用单选按钮
所以你需要像这样生成你的无线电按钮
<input type='radio' onclick='radioClick(this);' how_many_clicked='0' id='whatever id u need' name='whatever name u need' />
并在头部创建ur函数,如下所示
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;
}
}