Как проверить соответствие пароля с помощью праймфейса? - PullRequest
0 голосов
/ 06 мая 2020

Как я могу проверить, совпадает ли пароль в Primefaces? Я использую тег Primeface p: password, но при вводе другого mpin в оба поля (новый mpin и подтверждение mpin) он не показывает или обновляет ошибку, т.е. mpin не совпадает. Он показывает сообщение проверки после отправки, а не при событии нажатия клавиши

Вот мой код

<div class="row">
                    <div class="col-xs-12 col-sm-6 col-md-4">
                        <div class="form-field">
                            <p:outputLabel class="require-field"
                                           value="New MPIN"
                                           for="newMpin"></p:outputLabel>
                            <p:password type="text" id="newMpin"
                                        class="numbersOnly" maxlength="4"
                                        placeholder="Enter New Mpin"
                                        required="true"
                                        autocomplete="new-password"
                                        match="reEnterNewMpin"
                                        validatorMessage="#{msg.msgNewMpinMatch}"
                                        requiredMessage="#{msg.msgNewMpinValid}"
                                        value="#{changeMPINBean.mpin.newMPIN}">
                                <p:keyFilter regEx="/[0-9]/i"
                                             preventPaste="false"></p:keyFilter>
                                <f:validateRegex pattern="^[0-9]{4}$">
                                </f:validateRegex>
                                <p:ajax event="keyup" execute="@this" update="reEnterNewMpinMessage newMpinMessage"/>
                            </p:password>
                            <p:message for="newMpin" id="newMpinMessage"/>
                        </div>
                    </div>

                </div>

                <div class="row">
                    <div class="col-xs-12 col-sm-6 col-md-4">
                        <div class="form-field">
                            <p:outputLabel class="require-field"
                                           value="Confirm New MPIN"
                                           for="reEnterNewMpin"></p:outputLabel>
                            <p:password type="text" id="reEnterNewMpin"
                                        class="numbersOnly" maxlength="4"
                                        placeholder="Confirm New Mpin"
                                        required="true"
                                        autocomplete="new-password"
                                        validatorMessage="#{msg.msgNewConfirmMpinMatch}"
                                        requiredMessage="#{msg.msgNewConfirmMpinValid}"
                                        value="#{changeMPINBean.mpin.newMPIN}">
                                <p:keyFilter regEx="/[0-9]/i"
                                             preventPaste="false"></p:keyFilter>
                                <f:validateRegex pattern="^[0-9]{4}$">
                                </f:validateRegex>
                                <p:ajax event="keyup" execute="@this" update="reEnterNewMpinMessage newMpinMessage"/>
                            </p:password>
                            <p:message for="reEnterNewMpin" id="reEnterNewMpinMessage"/>
                        </div>
                    </div>
                </div>
  <div class="row">

                    <div class="col-xs-12">
                        <div class="form-field">

                            <p:commandButton value="Submit" id="createUserButton"
                                             styleClass="btn btn-md btn-wide btn-submit"
                                             actionListener="#{changeMPINBean.changeMPINFunctionality()}"
                                             onstart="ajaxFadeIn();" oncomplete="ajaxFadeOut();"
                                             update="userForm">
                            </p:commandButton>

                        </div>
                    </div>

                </div>

Gif также прикреплен для

reference

...