【问题标题】:disable two controls using one radio box in JSF Primefaces在 JSF Primefaces 中使用一个单选框禁用两个控件
【发布时间】:2015-04-30 09:22:09
【问题描述】:

我必须使用一对单选按钮禁用页面上的两个控件 我有以下代码:

<p:selectOneRadio id="console" binding="#{yesOrNo}" required="true">}">
  <f:selectItem itemValue="Yes" itemLabel="UPLOAD CLR" />
                    <f:selectItem itemValue="No" itemLabel="ORDER NUMBER" />
<p:ajax update="yesdata" />
        </p:selectOneRadio>     
         <p:fileUpload  id="yesdata"  fileUploadListener="#cBean.handleFileUpload}"
                label="Upload NC CLR" mode="advanced" multiple="false"
                update="createConfigPanel" auto="true" sizeLimit="100000" allowTypes="/(\.|\/)(xls|xlsx)$/"  disabled="#yesOrNo.value != 'Yes'}" /> 

上述代码的问题是我不能为另一个控件使用相同的 ID。代码继续:

    <h:panelGrid columns="2" cellpadding="8">
        <p:outputLabel for="serviceType" value="Service Type" />
                    <p:inputText id="serviceType"
                        value="#{cBean.serviceType}" required="true"></p:inputText>
...

我想在上述情况下点击 UPLOAD CLR 时禁用这个输入框。

请推荐

【问题讨论】:

    标签: jsf jsf-2


    【解决方案1】:

    您可以在update 属性中定义多个要更新的组件。只需添加另一个 ID,例如:

    update="id1 id2"
    

    【讨论】:

    • 哇!非常感谢 。有用。在同一张纸条上,您能否告诉我如何了解这些小细节,因为 primefaces 网站的内容非常简单
    • 另外,如果我需要在单选按钮上同时更新一个 bean 变量,点击我该怎么做?
    • 你是说在豆子里面?为此,您可以将侦听器添加到 ajax 并在 bean 中调用方法。
    • @Sahana:这都是基本的 JSF,与 PrimeFaces 无关。查看jsf.zeef.com 了解一般信息
    • @Szarpul 我在另一个线程中看到过类似的解释:code 这不起作用但是。同样,我需要根据值禁用两个控件
    猜你喜欢
    • 2014-01-22
    • 2012-03-27
    • 2012-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-19
    • 1970-01-01
    相关资源
    最近更新 更多