dojox 网格中来自 htmlStore 的 html 内容

发布于 2024-11-07 06:17:13 字数 1714 浏览 4 评论 0原文

我正在 dojox.grid.DataGrid 中显示 htmlStore 表中的数据。我希望在某些数据单元格中包含 html 内容(锚点 - a 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'
                }]];

I am displaying data from an htmlStore table in a dojox.grid.DataGrid. I wish to have html content (anchors - a href) in some of the data cells. I tried hardcoding the anchors in the htmlStore table but obviously that was grossly inefficient.

I was instructed to use an htmlStore. My preference was to use a ItemFileWriteStore then I could just hard code the url in the associated json file.

Layout code below. Thanks in advance!


            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'
                }]];

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

枫林﹌晚霞¤ 2024-11-14 06:17:13

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


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

然后在布局代码下面添加函数。

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

                  
        function actionsUrl() {
            return 'Edit';
        }

Resolved. I create a formatter "actionsURL" and added it to the grid.cell.


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

Then added the function below the layout code.

IMPORTANT. READ IF YOU INTEND TO USE THIS TECHNIQUE: there should be an html anchor encapsulating the returned value "Edit" in single quotes. It it just not showing up in my demo code.

                  
        function actionsUrl() {
            return 'Edit';
        }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文