dojox.grid.DataGrid 自定义单元格?

发布于 2024-10-07 02:13:21 字数 133 浏览 4 评论 0原文

谁知道为 dojox.grid.DataGrid 创建自定义单元格的方法?我当然可以使用布局的 get 和 formatter 属性,但这不是一个真正可重用的解决方案!

感谢您的投入!

海因里希

who knows a way to create a custom cell fora dojox.grid.DataGrid? I of course could use the get and formatter properties of the layout, but this is not a really reusable solution!

Thanks for your input!

heinrich

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

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

发布评论

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

评论(2

〆凄凉。 2024-10-14 02:13:21

自定义单元格是什么意思?

您想使用复选框还是文本框而不是文本?或者

您想显示图像而不是文本吗?

在第一种情况下,

  • 给 'editable'="true"
  • 设置 'singleClickEdit'= "true" 并
  • 设置 cellType 变量。
    您可以扩展默认编辑器类并创建您自己的编辑器类。

在第二种情况下,您可以使用格式化程序功能。

最好使用现有的函数和类。扩展会使网格变慢。

What do you mean by custom cell?

Do you want to use check box or textbox instead of text? or

Do you want to show images instead of text?

In the first case

  • give 'editable'="true"
  • set 'singleClickEdit'= "true" and
  • set cellType variable.
    You can extend the default editor class and make your own editor class.

In the second case you can use the formatter function.

It is better to use the existing functions and classes. Extending will make the grid slower.

护你周全 2024-10-14 02:13:21

您可以尝试间接的方式将 dojo 小部件添加到网格单元

1) 将 dojox.grid.DataGridescapeHTMLInData 设置为 false

2 )然后在 get/formatter 函数中尝试类似的方法

function formatterFn() {
    var buttonToReturn = dijit.form.Button({
        /* Button attributes */
    }
    var div = document.createElement("div");
    div.appendChild(buttonToReturn.domNode);
    return div.innerHTML;
    // You can leave the div orphan
}

您可以有条件地返回不同的小部件以满足您的需求

希望它有帮助!

You can try an indirect way to add a dojo widget to a grid cell

1) Set escapeHTMLInData to false for the dojox.grid.DataGrid

2) Then in the get/formatter function try something like

function formatterFn() {
    var buttonToReturn = dijit.form.Button({
        /* Button attributes */
    }
    var div = document.createElement("div");
    div.appendChild(buttonToReturn.domNode);
    return div.innerHTML;
    // You can leave the div orphan
}

You can conditionally return different widgets to suit your needs

Hope it helps!

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