【问题标题】:RadioButtons, ListViews, and Grouping, oh my!单选按钮、列表视图和分组,哦,天哪!
【发布时间】:2011-01-12 04:11:56
【问题描述】:
我有一个正在处理的项目,我需要在 ListView 中放置一个 RadioButton,并让它们都具有相同的 GroupName。 (不能使用 RadioButtonList,说来话长)。
无论如何,这似乎是 .NET 中的一个众所周知的错误,所以我实现了此处找到的解决方案:
ASP.NET RadioButton messing with the name (groupname)
这很好用,但有一个小错误,无疑会回来咬我。如果我单击一个单选按钮,然后在 javascript 函数仍在运行且尚未完成时单击另一个;我可以选择同一组中的 2 个单选按钮。
有什么想法吗?如果您需要澄清;给我留言,我会更新我的帖子。
编辑:我相信我在这里解决了自己的问题。请参阅下面我发布的答案。
【问题讨论】:
标签:
asp.net
listview
radio-button
【解决方案1】:
这样的东西有用吗?
if (!rbClicked)
rbClicked=True;
runJavascript();
rbClicked=False;
我承认我没有做很多研究,但这就是我通常解决这类问题的方法。
【解决方案2】:
原来我在这里被误导了。
在页面生命周期的后期;我正在添加一个额外的 onclick 事件,它覆盖了以前的值。
在以下示例中:
var radiobutton = new System.Web.UI.WebControls.RadioButton();
radiobutton.Attributes.Add("onclick", "test1");
radiobutton.Attributes.Add("onclick", "test2");
onlcick 属性设置为“test2”; test1 丢失。
我最终通过附加到现有属性来修复它;见下文:
radiobutton.Attributes["onclick"] = string.Format("{0};{1}", radiobutton.Attributes["onclick"], "My Second Script");
这没有问题。