首页 新闻 会员 周边

前台绑定读取radiobutton 选中

0
悬赏园豆:20 [已解决问题] 解决于 2012-04-13 11:05

repeater模板中有两个绑定数据的radiobutton 他们的选中状态是从数据库中读取判断的 但是现实是总是选中后一个 求解 代码如下

 <asp:Repeater runat="server" >
                    <HeaderTemplate>
                    <table cellpadding="0" cellspacing="0" width="960">
                    </HeaderTemplate>
                <ItemTemplate>
                     <tr >
                        <td >
                            <asp:HiddenField runat="server"  Value='<%#Eval("ID") %>'/>
                         (<%#Eval("Index")%>) <%#Eval("Question")%>                                                       
                         <td width="5%">
<input name="YCBbox<%#Eval("ID") %>" type="radio"  value="Y" checked="<%#Convert.ToBoolean(Eval("AnswerByTester").ToString()=="1" ? "True" : "False")%>" />正确<%#Eval("AnswerByTester")%></td><td width="5%">


<input name="YCBbox<%#Eval("ID") %>" type="radio"  value="N" checked="<%#Convert.ToBoolean(Eval("AnswerByTester").ToString()!="1" ? "True" : "False")%>" />错误</td>
                           <%--  <asp:RadioButtonList runat="server" AutoPostBack="True" RepeatDirection="Horizontal">
                                <asp:ListItem >正确</asp:ListItem>
                                <asp:ListItem>错误</asp:ListItem>
                             </asp:RadioButtonList>--%>
                         </td>
                    </tr>    
                </ItemTemplate>
                <FooterTemplate></table></FooterTemplate>
               </asp:Repeater>

嘉华的主页 嘉华 | 初学一级 | 园豆:106
提问于:2012-04-12 10:21
< >
分享
最佳答案
1

问题:

1.对于html控件中的<input type="radio"/>来说,只要控件中出现checked属性,就会被选中;

2.你两个radio中都有出现了selected属性并且name属性相同肯定选择的一直为最后一个

3.指定属性值为true或false只能用在<asp:>服务器控件中才起作用,所以此处不能那样判断

解决:

1.你可以写一个方法,传AnswerByTester为参数,用程序作判断,将<input type="radio">的html代码输出(建议)

2.你用服务器控件,可以在repeater中ItemDataBound事件中进行绑定

收获园豆:20
KivenRo | 小虾三级 |园豆:1734 | 2012-04-12 13:17

问题 2. 中写错属性了:应为chekced,不是selected

KivenRo | 园豆:1734 (小虾三级) | 2012-04-12 13:20
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册