数据网格Dojo中的href单元格

时间:2011-07-26 00:15:17

标签: datagrid cell dojo dojox.grid

我无法找到如何在dojo工具箱数据网格中放置带有href的单元格,正在使用的版本od dojo是1.6 这是我的表

  <table id="billsGrid" dojoType="dojox.grid.DataGrid" data-dojo-props="escapeHTMLInData:false">
        <thead>
            <tr>
                <th field="name" width="auto">name</th>
                <th field="description" width="auto">Description</th>
                <th field="activity" width="auto">activity</th>
            </tr>
        </thead>
    </table>

我正在用Json获取数据。

2 个答案:

答案 0 :(得分:3)

您可以使用格式化程序功能格式化单元格。例如,您可以声明包含所有格式化函数的JavaScript对象。

var myFormatters = {
   formatLink : function(value, index) {
        return "<a href='#'>" + value + "</a>";
   }
};

然后在网格中,

<table id="billsGrid" dojoType="dojox.grid.DataGrid" data-dojo-props="escapeHTMLInData:false" formatterScope="myFormatters"  >
    <thead>
        <tr>
            <th formatter="formatLink" field="name" width="auto">name</th>
            <th field="description" width="auto">Description</th>
            <th field="activity" width="auto">activity</th>
        </tr>
    </thead>
</table>

您不需要为格式化程序创建范围对象,然后此格式化函数应位于全局范围内,然后您可以省略网格中的formatterScope属性。

答案 1 :(得分:1)

出于安全原因,默认情况下,dojo网格会转义html标记,您只需启用html标记即可:

<table dojoType="dojox.grid.DataGrid" escapeHTMLInData="false" ...>

或者如果您的网格以编程方式添加

escapeHTMLInData: false

更多信息: http://dojotoolkit.org/reference-guide/dojox/grid/DataGrid.html