DataGrid中RadioButton的取值
我在DataGrid中加入的是HTML的RadioButton,现在我想取得选择的那一行的RadioButton的VALUE,我该怎么取阿,我写了一短代码:
for (int i=0; i<dgList.Items.Count; i++)
{
DataGridItem _item = dgList.Items[i];
HtmlInputRadioButton rdoBox = (HtmlInputRadioButton)_item.FindControl("setubiId");
if(rdoBox.Checked)
{
institutionId = rdoBox.Value;
}
}
这段是错误的,不行,请大家帮帮忙啊,
问题点数:0、回复次数:12Top
1 楼tongtianming(菜鸟也有梦想)回复于 2004-09-02 21:16:03 得分 0
为什么一定要写HTML的RadioButton?没有viewstat返回的话,想从服务器获得非常麻烦。
建议你绑定一个asp:RadioButton的模板列,这样会方便很多。
如果你硬要用HTML的RadioButton的话只能些客户端脚本,然后吧获得的内容传递到另外一个页面返回给服务器Top
2 楼cuike519(I will be back!)回复于 2004-09-02 21:19:32 得分 0
错在哪里请帖出异常信息好吗?Top
3 楼swzlxm(守望者)回复于 2004-09-02 21:20:05 得分 0
<ItemTemplate>
<INPUT type="radio" name=radioselect value='<%#DataBinder.Eval(Container,"DataItem.BORROW_DEP_NAME")%>'>
</ItemTemplate>
一定要要用NAME属性;
在CS里,Request.parms["radioselect"]可以取得所选RADIO绑定的VALUE值Top
4 楼swzlxm(守望者)回复于 2004-09-02 21:21:43 得分 0
在编辑模板时你,虽然用了NAME属性,实际上没有加,要在HTML下手动加Top
5 楼passacaglia(神秘园)回复于 2004-09-02 21:21:45 得分 0
<INPUT id="setubiId" type="radio" value="on" runat="server">
你没有加runat="server"吧???Top
6 楼iiboy(漠漠星)回复于 2004-09-02 21:24:24 得分 0
我看还是使用Client Script查找到再转送给服务器端要好
VBScript:
dim xx,selectvalue
selectvalue=""
for each xx in formName.Elements
if xx.type="radiobox" then
if xx.checked then
selectvalue=xx.value
exit for '如果有多个值要取的可就将这名改为selectvalue=selectvalue+","+xx.value
end if
next
formName.HiddenRadioControlValue.value=selectvalue 'HiddenRadioCountrolValue为一隐藏客户端控件
formName.submit
Top
7 楼passacaglia(神秘园)回复于 2004-09-02 21:26:09 得分 0
把<INPUT id="setubiId" type="radio" value="on" runat="server">
放到datalist里
在ItemDataBound里
((HtmlInputRadioButton)e.Item.FindControl("setubiId")).Value=......
赋值,再照你那么作应该是可以的Top
8 楼jackcjq(建)回复于 2004-12-02 18:58:51 得分 0
回复人: passacaglia(神秘园) ( ) 信誉:65 2004-09-02 21:26:00 得分: 0
把<INPUT id="setubiId" type="radio" value="on" runat="server">
放到datalist里
在ItemDataBound里
((HtmlInputRadioButton)e.Item.FindControl("setubiId")).Value=......
赋值,再照你那么作应该是可以的
牛,我觉得是 C# 下最佳的解决方法!!谢谢!
Top
9 楼jackcjq(建)回复于 2004-12-02 19:06:03 得分 0
但是 一加上 runat="server" 在DataGrid里Radio就可以多选了... ... 郁闷Top
10 楼jackcjq(建)回复于 2004-12-02 19:27:26 得分 0
这是个普遍的问题啊,模板列里radio可以多选,Html控件服务器端,不知道选择的是哪行,怎么办啊?没人解决过吗?Top
11 楼welweb963119(天马)回复于 2004-12-03 11:56:14 得分 0
swzlxm的答复可以解决这个问题!Top
12 楼fccvip(www.anagenesis.cn)回复于 2004-12-03 12:05:34 得分 0
private void DataGrid1_ItemDataBound_1(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
//goes here;
}
}Top




