例如我有这个单选按钮。
(o) item1 (o) item 2
然而,我希望它像:
(o) item1 (o) item2
line here line here
我目前的加价是:
<asp:RadioButtonList ID="RadioButtonList1" runat="server" RepeatDirection="Horizontal" Width="650px" Font-Size="Smaller">
<asp:ListItem Selected="True" Value="0">Relax<br>(MY MAN)</asp:ListItem>
<asp:ListItem Value="1">Relax Again<br>(My Man)</asp:ListItem>
<asp:ListItem Value="2">Relax Again 2<br>(MyMan)</asp:ListItem>
<asp:ListItem Value="3">Relax 3<br>(My Man)</asp:ListItem>
<asp:ListItem Value="4">Relax 4<br>(My Man)</asp:ListItem>
<asp:ListItem Value="5">Relax 5<br>(My Man)</asp:ListItem>
<asp:ListItem Value="6">Relax 6<br>(My Man)</asp:ListItem>
</asp:RadioButtonList>
但它会生成以下验证错误消息:the element 'br' cannot be nested within the element 'listitem'
。
答案 0 :(得分:2)
注意:这里给出的解决方案确实有效,但比必要的更复杂。请参阅J Talati对自己帖子的回答,以获得最佳答案。
<小时/> 如果你想要一个没有错误的标记,你可以在一个表中(它是由RadioButtonList呈现的方式)重现RadioButtonList,其中单独的RadioButtons共享相同的
GroupName
:
<table id="RadioButtonTable1" runat="server" class="radioList">
<tr>
<td>
<asp:RadioButton runat="server" GroupName="RadioList" Checked="true" Value="0" Text="Relax<br />(MY MAN)" />
</td>
<td>
<asp:RadioButton runat="server" GroupName="RadioList" Value="1" Text="Relax Again<br />(My Man)" />
</td>
<td>
<asp:RadioButton runat="server" GroupName="RadioList" Value="2" Text="Relax Again 2<br />(MyMan)" />
</td>
...
</tr>
</table>
radioList
类样式允许自定义布局:
.radioList td
{
text-align: left;
width: 80px;
}
现在,获取所选值并不像RadioButtonList那么简单。您可以使用Jimmy在Better way to find control in ASP.NET:
中提供的课程ControlFinder<RadioButton> radios = new ControlFinder<RadioButton>();
radios.FindChildControlsRecursive(RadioButtonTable1);
foreach (RadioButton rb in radios.FoundControls)
{
if (rb.Checked)
{
string value = rb.Attributes["Value"];
...
break;
}
}
RadioButtons没有Value
属性,但可以在标记中添加属性,并在代码隐藏中检索该属性。
答案 1 :(得分:1)
ProjectImagePath
让这个工作!哇噢!只需添加所有文本属性。