Я использую плагин jQuery dataTables с xpages и имею пользовательский элемент управления, который я бросаю на любую страницу, передаю пользовательское свойство viewName и отображает таблицу с использованием REST - All на основе некоторых замечательных примеров Оливер Буссе.Xpages & DataTables
Все работает отлично, если этот настраиваемый элемент управления используется на основной странице, однако, если он находится на вкладке, которая не является по умолчанию, когда я затем нажимаю на вкладку, содержащую элемент управления, я получаю сообщение об ошибке при вызове viewjson.getId()
Я думаю, проблема в том, что я установил viewjson на beforePageLoad?
Любая идея, как я могу заставить это работать в интерфейсе с вкладками?
код ниже:
<xp:this.beforePageLoad><![CDATA[#{javascript:var viewjson = new org.openntf.rest.DynamicView(compositeData.viewName);}]]></xp:this.beforePageLoad>
<table
id="#{javascript:viewjson.getId()}"
class="table table-hover table-striped">
<thead>
<xp:repeat id="repeat1" rows="30" disableOutputTag="true"
var="col">
<xp:this.value><![CDATA[#{javascript:try {
viewjson.getCols()}
catch (e) {
openLogBean.addError(e,this)
}}]]></xp:this.value>
<th>
<xp:text escape="true" disableTheme="true"
value="#{col}">
</xp:text>
</th>
</xp:repeat>
</thead>
<tbody></tbody>
</table>
UPDATE
Я попытался следующие, чтобы попытаться загрузить JQuery первый
<xp:this.resources>
<xp:headTag
tagName="script">
<xp:this.attributes>
<xp:parameter
name="type"
value="text/javascript" />
<xp:parameter
name="src"
value="/xsp/.ibmxspres/.extlib/responsive/jquery/jquery.min.js" />
</xp:this.attributes>
</xp:headTag>
</xp:this.resources>
А также это в свойствах Хр
xsp.client.script.dojo.djConfig="dojo-amd-factory-scan": false
Но я все еще получаю пустую страницу без элементов dojo, отображающих
Используйте этот XSnippet для обработки проблемы загрузчика AMD: https://openntf.org/XSnippets.nsf/snippet.xsp?id=hack-to-use-jquery-amd-widgets-and-dojo-together –