2011-12-19 49 views
0

在primefaces 3.0.M3中,使用document.getElementById('confirmPassword')將textBox的值傳遞給javaScript,它給出一個空值! 代碼是:在primefaces :onkeyup =「check()」on <p:password>對輸入元素值顯示爲空

<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> 
在JavaScript

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

我已經設置prependId = 「假」。但警報顯示null.Any其他方式做同樣的?

+0

您何時調用此函數?和你檢查生成的HTML是否是相同的ID? – 2011-12-19 06:51:46

+0

調用onkeyup =「check()」。 – NaaN 2011-12-19 06:53:53

+0

,你可以發佈爲這個XHTML生成的HTML片段嗎 – 2011-12-19 06:56:34

回答

1

正如你提到的,所生成的HTML是如下

<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,請重新檢查您的h:form下,這些組件的謊言,並設置prependId="false"

和如果您嘗試獲取標識爲confirmPassword的HTML dom,它將返回null,其中HTML中的實際ID爲formId:confirmPassword_input

+0

我已經設置prependId = 「假」。當我與 'password_input' 這是確定...像,checkPass改變功能(){\t \t \t \t \t \t VAR TITLE1 =的document.getElementById( 'password_input') 。值; var title2 = ocument.getElementById('confirmPassword_input').value; \t alert(title1 + title2); \t} – NaaN 2011-12-19 07:36:43

+0

無論如何,感謝您的幫助! – NaaN 2011-12-19 07:48:49

相關問題