【问题标题】:How to enable/disable <p:inputtext> depending on selecting values from<p:selectonemenu> dropdown in jsf如何根据从 jsf 中的 <p:selectonemenu> 下拉列表中选择的值启用/禁用 <p:inputtext>
【发布时间】:2018-08-29 09:31:59
【问题描述】:

我们正在使用 JSF 2.2.4 和 PrimeFaces 5 来开发一些表单域。

例如:公司和短代码是我的下拉菜单,“如果您选择了其他”是我的输入文本字段。因此,如果用户从下拉菜单中选择“其他”,则应启用“如果您已选择其他”文本字段,否则应禁用。 以下是我的代码:

<p:outputLabel value="Company Name and Shortcode:* " escape="true" />

<p:selectOneMenu  value="#{user.shipper}" effect="fold" required="true" id="selectone" autocomplete="off" 
     requiredMessage="#{error['form.shippershortcode']}"  widgetVar="selectWV"  >
        <f:selectItem itemLabel="----" itemDisabled="true"  />
        <f:selectItems value="#{shipperdropdown.shipperlist}"  />


</p:selectOneMenu>

    <p:outputLabel  value="If selected ‘Other’ above, please specify:" 
                 escape="true"  />
               <p:inputText  value="#{user.companyname}" 
              autocomplete="off"  id="company"  disabled="#{ user.shipper !='Others'}"  />

【问题讨论】:

    标签: jsf primefaces jsf-2.2


    【解决方案1】:

    查看这个确切的例子:https://www.primefaces.org/showcase/ui/ajax/dropdown.xhtml

    我认为您只需要添加您的 p:selectOneMenu...

    <p:ajax update="company" process="@this" />
    

    就这样……

    <p:selectOneMenu  value="#{user.shipper}" effect="fold" required="true" id="selectone" autocomplete="off" 
         requiredMessage="#{error['form.shippershortcode']}"  widgetVar="selectWV"  >
            <f:selectItem itemLabel="----" itemDisabled="true"  />
            <f:selectItems value="#{shipperdropdown.shipperlist}"  />
            <p:ajax update="company" process="@this" />
    </p:selectOneMenu>
    

    【讨论】:

    • 使用 后没有显示成功消息,但在后台代码运行良好,我得到了所需的输出,但该输出没有显示在我的前端跨度>
    • NOT f:ajax use "p:ajax" 这是 PrimeFaces 版本,与我的示例完全一样。
    • 该字段在使用 后被禁用,但是当提交表单后其他字段的验证失败时,禁用的字段又恢复为启用...请对此提供帮助跨度>
    • 我请求你在 PF 展示中研究这些示例:primefaces.org/showcase/ui/ajax/process.xhtml 你在组件上使用 disabled="" 吗?您必须是,否则组件不会被禁用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-15
    • 2020-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-30
    • 1970-01-01
    相关资源
    最近更新 更多