2017-03-20 50 views
0

在我的JSF應用程序中,具有以下ID的html元素之一。如何使用jquery選擇JSF生成的html元素

FrmOffer:rptOffer:0:j_idt325:0:j_idt355:0:j_idt356:0:j_idt560:0:j_idt632 

當我嘗試使用以下的Jquery線以選擇所述元件,

選項1: $('#FrmOffer:rptOffer:0:j_idt325:0:j_idt355:0:j_idt356: 0:j_idt560:0:j_idt632' );

這將返回: 未被捕獲的錯誤:語法錯誤,不能識別的表達式:不支持的僞:rptOffer

選項2:

$('#FrmOffer\\:rptOffer\\:0\\:j_idt325\\:0\\:j_idt355\\:0\\:j_idt356\\:0\\:j_idt560:0\\:j_idt632'); 

這將返回: []

任何人都可以建議如何選擇元素?

+0

可以使用與像'選擇開始$( '[ID^= FrmOffer]')length' – guradio

回答

0

這樣你就會受到影響。

在JSF中,你可以reffer來串聯他們的父元素的名稱,內容,如果所有元素有一個ID:

<h:form id="formId"> 
    <h:inputText id="emailAddresses" value="#{emailAddresses.emailAddressesStr}"/> 

var input = document.getElementById('formId:emailAddress');

也許這回答的問題可以幫助你How can I know the id of a JSF component so I can use in Javascript

+0

我已經提到的鏈接,但如果我添加ID到。父元素,我必須修改所有子元素的代碼。爲了這一小改變,我不想打破這種複雜的功能。 – aravind

0

我們可以使用本地JavaScript選擇器而不是jQuery。 下面是我的代碼:

document.getElementById('FrmOffer:rptOffer:0:j_idt325:0:j_idt355:0:j_idt356:0:j_idt560:0:j_idt632');