How to set default value of h:selectOneRadio button

前端 未结 4 2157
梦毁少年i
梦毁少年i 2021-02-19 21:28

I am unable to set the default value of h:selectOneRadio as i need radio button to be pre selected



        
相关标签:
4条回答
  • 2021-02-19 21:44

    Only use that <h:selectOneRadio required="true"> :

    <h:selectOneRadio required="true" id="myRadio" value="#{Externalbean.addressFlag}" >
      <f:selectItem itemValue="1" itemLabel="Yes"/>
      <f:selectItem itemValue="0" itemLabel="No"/>
    </h:selectOneRadio>
    
    0 讨论(0)
  • 2021-02-19 21:52

    I did a little test, it works just fine as expected, but I also observed that when you leave out the <h:form> tag, the behaviour of radio buttons is unpredictable and dependent on the webbrowser. The JSF-generated HTML output looks correct, but the webbrowser would in the view only select the button which was actually selected by the user in the previous request on the same page. If the cache is empty, none of the buttons is selected. At least, that was the case in FF.

    So, it look like that you're forgotten to put a <h:form> around it.

    0 讨论(0)
  • 2021-02-19 21:52

    Did you try to set the addressFlag as an Integer?

    private Integer addressFlag = 0;
    
    public Integer getAddressFlag() {
        return addressFlag;
    }
    
    public void setAddressFlag(Integer addressFlag) {
        this.addressFlag = addressFlag;
    }
    
    0 讨论(0)
  • You need to set the default value in the init method of your backing bean:

    @ManagedBean
    public class YourBackingBean implements Serializable {
    
        private String addressFlag;
    
        @PostConstruct
        public void init() {
            addressFlag = "0";
        }
    
        public String getAddressFlag() {
            return addressFlag;
        }
    
        public void setAddressFlag(String addressFlag) {
            this.addressFlag = addressFlag;
        }
    }
    
    0 讨论(0)
提交回复
热议问题