在應用程序中,我有一個重複控制,並且對於重複中的每個條目,我都有一個相應的引導程序對話框模式。在xpages中加載引導程序模式
我想打開一個特定的模式,當用戶使用提供的URL打開包含散列值的xpage時。散列值對應於模態的id,例如#view:_id1:_id152:objRepeatList:1:_id193:_id200:bootstrapModal
但是我注意到命令$( '#視圖:_id1:_id152:objRepeatList:1:_id193:_id200:bootstrapModal')。模態( '顯示');沒有提供任何結果。
爲了測試顯示()函數,我做了一個簡單的測試腳本,獲取DOM中第一模態分量並嘗試打開它:
$(document).ready(function() {
var cardType= '#{javascript:SSApp.getCurrentObjectCollectionCardType()}';
if (cardType=="cardPicture"){
var modals = $(".modal");
alert(modals.length);
if (modals.length > 0){
var firstModal = modals.first();
alert("we got one");
var firstModalId = "#" + firstModal.attr('id');
alert(firstModal.attr('id'));
$(firstModalId).modal('show');
}
}
});
我收到的所有警報,但最後一個命令行總是給零結果。
因爲XPage中與局部刷新的作品我也試圖爲更新頁面的事件處理程序中的onComplete事件,但它似乎是一個很大的緩存,然後繞來繞去,有時cardType存儲在內存中以某種方式:
<xp:eventHandler event="onclick" submit="true"
refreshMode="partial" refreshId="row-body">
<xp:this.action>
<![CDATA[#{javascript:sessionScope.put("collDisplay","cards");
SSApp.currentObject.loadRelations(relation.category);}]]>
</xp:this.action>
<xp:this.onComplete><![CDATA[var cardType= '#{javascript:SSApp.getCurrentObjectCollectionCardType()}';
if (cardType=="cardPicture"){
var modals = $(".modal");
alert(modals.length);
if (modals.length > 0){
var firstModal = modals.first();
alert("we got one");
var firstModalId = "#" + firstModal.attr('id');
alert(firstModal.attr('id'));
$(firstModalId).modal('show');
}
}]]></xp:this.onComplete>
</xp:eventHandler>
任何人都有線索我應該做的更正嗎?
有兩個問題:1)您是否嘗試使用具有相同或不同結果的瀏覽器控制檯啓動模型? 2)您是否嘗試過使用全面刷新,然後才能正常工作? (顯然不可取,但*可能*是必要的) –