来自htmlStore的dojox网格中的html内容

时间:2011-05-13 16:14:52

标签: formatter dojox.grid.datagrid

我在dojox.grid.DataGrid中显示htmlStore表中的数据。我希望在某些数据单元格中有html内容(锚点 - 一个href)。我尝试在htmlStore表中对锚点进行硬编码,但显然效率非常低。

我被指示使用htmlStore。我的偏好是使用ItemFileWriteStore然后我可以硬编码关联的json文件中的url。

下面的布局代码。提前谢谢!


            dojo.require("dojox.data.HtmlStore");
            dojo.require("dojox.grid.DataGrid");
                // set the layout structure:
                var layoutDash = [

                [{
                    field: 'Order ID',
                    name: 'Order ID',
                    width: '56px'
                },
                {
                    field: 'Opportunity ID',
                    name: 'Opportunity ID',
                    width: '110px'
                },
                {
                    field: 'Opportunity Name',
                    name: 'Opportunity Name',
                    width: '170px'
                },
                {
                    field: 'Customer',
                    name: 'Customer',
                    width: '210px'
                },
                {
                    field: 'Sales Rep',
                    name:  'Sales Rep',
                    width: '80px'
                },
                {
                    field: 'Stage/Status',
                    name:   'Stage/Status',
                    width:  '100px'
                },
                {
                    field: 'Last Modified',
                    name:  'Last Modified',
                    width: '90px'
                },
                {   
                    field: 'Actions',
                    name:  'Actions',
                    width:  'auto',
                    editable: 'true'
                }]];

1 个答案:

答案 0 :(得分:0)

解决。我创建了一个格式化程序“actionsURL”并将其添加到grid.cell中。


    {   
        field: 'Actions',
        name:  'Actions',
        width:  'auto',
        editable: 'true',
        formatter: actionsUrl
    }]];

然后在布局代码下添加了该功能。

重要。阅读如果您打算使用此技巧:应该有一个html锚点,用单引号封装返回值“Edit”。它只是没有出现在我的演示代码中。

                  
        function actionsUrl() {
            return 'Edit';
        }