如何在XPages数据表中使用datatables.js?

时间:2012-12-19 19:04:37

标签: datatables xpages-ssjs

我正在尝试使用datatables.js插件和一个显示来自Notes遗留视图数据源的3个计算字段的数据表。我遇到的问题是我似乎无法将我的datatable1初始化/传递到插件中?我不确定我是否有正确的datatables.js库。任何见解将不胜感激。提前致谢。 SW

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:this.data>
    <xp:dominoView var="view1" viewName="MyName"></xp:dominoView>
</xp:this.data>

<xp:this.resources>
    <xp:script src="/dataTables.js" clientSide="true"></xp:script>
    <xp:script
        src="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/css/jquery.dataTables.css"
        clientSide="true">
    </xp:script>
    <xp:script src="http://code.jquery.com/jquery-1.8.2.js"
        clientSide="true">
    </xp:script>
    <xp:script
        src="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/jquery.dataTables.min.js"
        clientSide="true">
    </xp:script>
</xp:this.resources>


<xp:eventHandler event="onClientLoad" submit="true"
    refreshMode="norefresh">
</xp:eventHandler>
<xp:dataTable id="dataTable1" rows="10" value="#{view1}" var="rows">
    <xp:column id="column1"><xp:this.facets>
<xp:span xp:key="header">Name</xp:span></xp:this.facets>
        <xp:text escape="true" id="computedField1" value="#{rows.Name}"></xp:text></xp:column>
    <xp:column id="column2">
        <xp:text escape="true" id="computedField2" value="#{rows.Age}"></xp:text>
        <xp:this.facets>
<xp:span xp:key="header">Age</xp:span></xp:this.facets></xp:column>
</xp:dataTable>

1 个答案:

答案 0 :(得分:0)

我认为你应该首先确保datatables.js依赖于你对jquery核心的依赖。在渲染阶段,XSP首先会向dataTables.js呈现标记,然后再为jQuery加载标记。这应该导致客户端错误(您可能已经在浏览器的js控制台中看到),因为dataTables.js脚本试图从jQuery访问fucntionaliyt,该jQuery尚未定义为在jquery.js之前加载了dataTables.js

如果这没有帮助 - 您的浏览器javascript控制台显示什么?有错误吗?