【问题标题】:Disable / Enable primefaces keyFilter禁用/启用primefaces keyFilter
【发布时间】:2020-08-03 15:37:22
【问题描述】:

我的 p:inputMask 有一个 keyFilter 我想禁用和启用 keyFilter

<div class="col-sm-6 #{(newDesWeb eq '_')?'input-group' : ''} errorCible"  >
                <p:inputMask  inputStyleClass="#{(newDesWeb eq '_')? 'selectfile' : 'form-control lg200 input-sm'}  errorCible"
                    id="zoneResidenceAssure" styleClass="#{(newDesWeb eq '_')? 'ng-pristine ng-invalid ng-touched' : ''}  errorCible"
                    style="width: 100%"
                    value="#{devisPresBean.currentAssureDevisBean.adresseActuelle.zipCode}" maxlength="#{msg['form.control.input.codepostal.maxlength']}">
                    <c:passThroughAttribute name="fieldId" value="LIBDEVzoneResidenceAssure" />
                    <c:ajax onevent="displayAjaxSatus" event="change" execute="@this" render="@this" />
                </p:inputMask>
                <p:keyFilter regEx="/[0-9_]/i" for="zoneResidenceAssure" />
                <bpsi:message for="zoneResidenceAssure" />
                 
            </div>

我想在一个条件下禁用p:keyFilter

【问题讨论】:

标签: jsf primefaces keyfilter


【解决方案1】:

您可以通过 3 种方式做到这一点:

  1. 使用在&lt;p:keyFilter regEx="/[0-9_]/i" for="zoneResidenceAssure" rendered="#{backing.condition()}"/&gt; 上渲染,但随后您需要更新 keyFilter 的容器,无论是表单还是面板,以更改条件。

  2. 使用像&lt;p:keyFilter regEx="#{backing.regex()}" for="zoneResidenceAssure" /&gt; 这样的动态正则表达式,并在每次条件更改时更新keyFilter,如果您希望启用它,则返回实际模式或禁用它的空字符串。

  3. keyFilter 上使用testFunction 而不是regEx,并在JavaScript 中实现条件作为测试函数。

【讨论】:

    猜你喜欢
    • 2014-09-07
    • 1970-01-01
    • 2013-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-01
    相关资源
    最近更新 更多