2010-09-14 117 views
0

我们使用以下代码从单选按钮组中选择一个选项值。如果单击单选按钮控件和水平布局中的选项(此行为始终可重现),有时单选按钮无法正确选择。如果我点击该行的任何位置,如何确保该值被选中。单选按钮没有正确选择

   <h:selectOneRadio value="#{_user.choice}"> 
        <f:selectItems value="#{_user.choices}" /> 
       </h:selectOneRadio> 
+2

是什么渲染HTML看起来像这个? – 2010-09-14 09:31:45

回答

0

如果你想使用整个DIV切换收音机,你需要使用一些JS。如果你只是想通过它旁边的文本和广播和文字标签之间的区域的无线电选择,使用:

<p><label><input type="radio">Click me.</label></p> 

你不需要绕式报价,但它是一个好主意无论如何,要使用它们。我更喜欢在输入端使用'p'标签,这样我可以更好地自动纠错。这是没有必要的,你会听到很多人说,“那个标签是没有必要的。”

您还可以打开和关闭'fieldset'标记或者'legend'标记。您可以在W3C 4.10的HTML5表格上看到规格。

您可能还想使用'value'标记。例如:

<form method="post"> 
    enctype="application/x-www-form-urlencoded" 
    action="https://coke.example.com/order.cgi"> 
    <p><label>Order number: <input name="orderID"></label></p> 
    <fieldset> 
    <legend>Drink</legend> 
    <p><label><input type="radio" value="coke">Do you want a Coke?</label></p> 
    <p><label><input type="radio" value="pepsi">Or do you want a Pepsi?</label></p> 
    </legend> 
    </fieldset> 
</form> 

随着我提交的代码,我无法再现您的问题,先生。

0

<h:selectOneRadio>不会呈现标签内的单选按钮,单选按钮本身在大多数(如果不是所有的话)浏览器中都有一些默认边距。单击此边距的确不会选择单选按钮。您希望在CSS的帮助下将此边距设置为零,如有必要,请用填充替换它。例如。

<h:selectOneRadion styleClass="radiobuttons"> 

.radiobuttons input { 
    margin: 0; 
}