在primefaces + javascript中检查密码是否匹配

时间:2011-12-16 08:07:08

标签: java javascript jsf-2 primefaces

如何在primefaces + javascript中检查密码是否匹配? 我用过这样的

function checkPass(){

var pass1 = document.getElementById('password');
var pass2 = document.getElementById('confirmPassword');
lert(pass2);
}

但获得空值!在素数表面中,我称之为onkeyup="checkPass(); return false;"

3 个答案:

答案 0 :(得分:7)

我不明白你为什么使用Primefaces并且没有利用它的力量......

在primefaces中有一个password标记,其中match属性与两个输入密码之间的字符串相匹配,如果密码较弱或较强,您也可以获得反馈:

<p:panel header="Match Mode">  
        <p:messages showDetail="true" autoUpdate="true"/>  

        <h:panelGrid columns="2" id="matchGrid">                     
            <h:outputLabel for="pwd1" value="Password 1: *" />  
            <p:password id="pwd1" value="#{passwordBean.password6}" feedback="true" match="pwd2" label="Password 1" required="true"/>  

            <h:outputLabel for="pwd2" value="Password 2: *" />  
            <p:password id="pwd2" value="#{passwordBean.password6}" feedback="false" label="Password 2" required="true"/>  
        </h:panelGrid>  

        <p:commandButton update="matchGrid" value="Save" />  
    </p:panel>

请参阅此链接:http://www.primefaces.org/showcase-labs/ui/password.jsf。 由于您尚未指定Primefaces版本,我必须告诉您此解决方案适用于Primefaces 3.

答案 1 :(得分:1)

试试此代码

onkeyup="checkPass(this.value)" 

和javascript代码:

function checkPass(text) {
  var pass1 = document.getElementById('password');
  if (text == pass1.value) {
    alert('match');
    return true;
  } else {
    return false;
  }
}

答案 2 :(得分:1)

要获取字符串值,我们必须使用JSF Primefaces中的代码,如

var pass1 = document.getElementById('password_input'); 
var pass2 = document.getElementById('confirmPassword_input');