2011-12-19 10 views
0

プライムフェイス3.0.M3では、textBox値をjavaScript(null値)にするためにdocument.getElementById( 'confirmPassword')を使用しています。 コードは次のとおりです。primefacesで :onkeyup = "check()" on は入力要素の値がnullを示します

JavaScriptで
<h:outputText value="Confirm Password*" /> 
<p:password 
value="#{employeeRepositoryImpl.securityPrincipals.confirmPassword}" 
required="true" label="Confirm Password" id="confirmPassword" for="confirmPassword" onkeyup="check()" > 
update="confirmPassword" /> 
</p:password> 

function check(){ 
    var title1 = document.getElementById('confirmPassword'); 
    var title2 = document.getElementById('password'); 
    alert(title1+title2);} 

私は= "false" をprependIdを設定しています。しかし、アラートはnullを示しています。同じことをする他の方法はありますか?

+0

です。この関数はいつ呼び出すのですか?あなたは生成されたHTMLをチェックしましたか?同じIDですか? –

+0

onkeyup = "check()"を呼び出しています。 – NaaN

+0

このXHTML用に生成されたHTMLスニペットを投稿できます –

答えて

1

あなたが述べたように、生成されたHTMLはまだフォームがそれからIDを追加し、あなたのh:formの下で、これらのコンポーネントの嘘を再確認し、prependId="false"

を設定してください意味として

<input id="formId:confirmPassword_input" class="ui-inputfield ui-password ui-widget ui-state-default ui-corner-all" type="password" onkeyup="checkPass()" value="fd" name="formId:confirmPassword_input"> 

を下回っており、 IDがconfirmPasswordのHTML domを取得しようとすると、nullが返されます。ここで、HTMLの実際のIDはformId:confirmPassword_input

+0

は、私はすでにprependId = "false" を設定している(){\t \t \t \t \t \t するvar TITLE1 =のdocument.getElementById( 'password_input') 。値; var title2 = ocument.getElementById( 'confirmPassword_input')。値; \tアラート(タイトル1 +タイトル2)。 \t} – NaaN

+0

とにかく、ありがとうございます! – NaaN

関連する問題