0

我正在使用单选按钮,因为它使绑定项目和控制动态事件变得非常容易。

我的问题是隐藏 ListItem.Text 左侧或右侧的 RadioButtonList ListItem“圆圈”。

我将每个 ListItem.Text 属性设置为 HTML<img>.

我希望 RadioButtonList 仅显示 RadioButtonList 列表中的 ListItem.Text 属性,而旁边没有单选按钮圆圈。经过一番研究,我意识到我认为不可能隐藏单选按钮的 ListItem 圆圈,而不隐藏整个单选按钮列表。

所以我的第二个选择是通过 CSS 将 ListItem.Text 放在 RadioButtonList ListItem“圆圈”的顶部。这是我到目前为止所尝试的,但我担心我的 CSS 技能是松懈的 :(

noPizzaMod.Text = "<img src=\"image.png \" />";
noPizzaMod.Attributes.CssStyle.Add("float", "left");
noPizzaMod.Attributes.CssStyle.Add("padding","0 1em");
noPizzaMod.Attributes.CssStyle.Add("text-align", "center");
rdo_pizzamods.Items.Add(noPizzaMod);

结果:刚刚在单选按钮 ListItem Circle 的左侧添加了填充。

同样,手头的任务是将 ListItem.Text(图片元素)浮动到 RadioButtonList ListItem“圆圈”的顶部

感谢您的时间!

PS:我尝试过的另一件事是使用 JQuery 来显示:无单选按钮列表项,但当然会隐藏文本以及整个单选按钮列表:(

作为最后的手段,我可​​以切换到复选框的切换按钮扩展器,但这将包括重新设计我们的显示机制。希望有一个简单的解决方案,并且其中一位大师可以指出我!

编辑:

我只是有一个 asp:Panel,我将 RadioButtonList 动态添加到后面的代码中。

<asp:Panel ID="pnl_pizzamods" runat="server"></asp:Panel>

像这样

ListItem PizzaMod = new ListItem();
noPizzaMod.Text = "<img src=\"image.png \" />";
noPizzaMod.Attributes.CssStyle.Add("float", "left");
noPizzaMod.Attributes.CssStyle.Add("padding","0 1em");
noPizzaMod.Attributes.CssStyle.Add("text-align", "center");
rdo_pizzamods.Items.Add(noPizzaMod);
pnl_pizzamods.Controls.Add(rdo_pizzamods);

我还在后台添加了自定义动态事件处理程序和许多其他 mojo,这使得 RadioButtonList 数据绑定对我来说很容易控制。我敢肯定它不会影响视觉布局!再一次感谢你的帮助!

4

1 回答 1

1

您是否尝试过简单地隐藏单选按钮?

input[type='radio'] { visibility: hidden; }

小提琴:http: //jsfiddle.net/kboucher/8GaV5/

于 2012-10-04T22:12:05.830 回答