在帶有Apache Trinidad的JSF 1.1項目中,我需要創建幾個動態h:commandLink,並且它們需要由JS訪問以便在加載時單擊。如何從c:forEach設置id到id h:commandLink以便被JS接受?
我有這是JS:
var cardsSize = window.document.getElementById("miForm:cardsSize").value;
for(var i = 0; i <= cardsSize; i++){
setTimeout(function(){
var buttonCard = window.document.getElementById("miForm:buttonCard_"+i);
buttonCard.click();
}, 1000);
}
而我不得不以.jsp是:
<c:forEach var = "i" begin="0" varStatus="index" end="#{pageFlowScope.cardsSize}">
<h:commandLink id="buttonCard_#{index.index}"
style="display:none"
action="#{confirmBacking.generateDocument}"
onclick="document.forms['miForm'].target='_blank';">
<f:setPropertyActionListener target="#{confirmBacking.indexCard}" value="#{index}" />
</h:commandLink>
</c:forEach>
的問題是,當我創建的commandLink與C:的forEach,使用動態ID結束於根據標記文件中的TLD或屬性指令,屬性「[id]」不接受任何表達式
其他解決方案r c:forEach或ui:重複創建具有不同參數的幾個commandLink意味着沒有和id,但是我需要id,因爲據我所知,JS沒有其他方式來訪問這些對象。
如果您使用的用戶界面:再說一遍,你會自動獲得一個ID與索引後綴到它... – Kukeltje
我怎麼能知道該ID爲了從JavaScript訪問它? –
想想這一切都是HTML ...你如何閱讀在JavaScript的HTML元素的屬性?非常通用和'可以googleable'的問題 – Kukeltje