问题标签 [dgrid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
797 浏览

dojo - canEdit 在默认加载时无法在 dgrid 中工作

我有一个树形网格,在编辑时具有以下 ui 要求。

  • 某些行的成本列是可编辑的。
  • 默认情况下,可编辑行应始终可用于编辑,而不是基于任何事件。
  • 每行都有最小最大范围。当用户输入需要验证的值时。

这是我为 dgrid 定义的列结构。

尽管树和编辑工作正常,但我几乎没有要解决的问题。

  • 当没有为编辑器提供 editOn 时,默认情况下该列是可编辑的。但是,只有当我们在 editOn 参数中提供 spl 事件时,才会调用 canEdit。有没有办法让 canEdit 即使在默认加载期间也被调用。
  • 我需要为每一行动态设置 NumberTextBox 的范围约束。有没有一种简单的方法可以根据行值设置约束。

非常感谢您的帮助

0 投票
1 回答
1492 浏览

php - 在 Zend Framework 2 应用程序的表单集合中使用 dgrid

对于我们的新项目,我们已经开始使用 Zend Framework 2 和 Dojo 1.8。ZF2 有一个完全重写的表单模块,它现在具有用于一对多关系的新 CollectionElement。关于 UI,我发现 dgrid 最适合这种关系(使用编辑器列插件),所以我开始扩展 FormCollection、FormRow 和 FormElement 视图助手,以便它们可以呈现所需的 dgrid。一切都很好,直到我意识到我无法为 dgrid 小部件设置每行输入名称。

我从ZF2 文档开始处理表单集合。可以看到,集合输入元素具有类似数组的名称,例如

另一方面,dgrid 的配置是基于列的,所以我可以有一个像这样的列定义

此列定义将为所有行定义设置相同的小部件名称,这不适用于 ZF2 集合数据格式要求。

我还尝试过这样命名列:

哪个有效,但不允许所需的格式

也许有一种方法可以像这样发布数据:

并在之后对其进行转换,但解决方案看起来不正确。除此之外,我正在尝试生成可重用的代码并希望避免执行表单数据修改。

由于我非常努力地避免对数据转换进行 onSubmit/onClick 事件处理,因此有两种可能的解决方案: 1. 使 dgrid 能够设置每行小部件名称 2. 使 ZF2 表单理解一些非标准的 POST 格式收藏品

不幸的是,我没有想法,如何完成这两种解决方案,所以如果你能帮我解决这个问题,我将不胜感激!

由于这与我当前的问题有些相关,因此我将把它作为一个附带问题放在此处:除了这个 UI 解决方案之外,您还为与 dojo 的一对多表单界面使用了什么?

0 投票
1 回答
211 浏览

grid - 如果我遍历它,grid.selection 就会丢失

当我遍历 grid.selection 参数(小部件 dgrid**)时,它只会在 grid.selection 内给我第一个值,然后它变为 null,网格内的选择也会丢失。我怎样才能避免这种情况?是否有任何参数可以避免这种行为?

**http://www.sitepen.com/blog/2011/10/26/introducing-the-next-grid-dgrid/

0 投票
2 回答
2917 浏览

typescript - 导入语法以从 TypeScript 引用 dgrid

我正在并行学习 TypeScript 和 Dojo,这暴露了我对 AMD 的有限理解。我不明白如何将导入语句与第 3 方“dgrid/Grid”AMD 模块、我的 dgrid.d.ts 存根声明和我的消费类联系在一起。经过 2 天的浪费努力,我正在寻找任何方法(hacky 或 amd 最佳实践)来执行以下操作:

我的模块.ts

这是我的 dgrid 存根声明文件。

dgrid.d.ts(编辑为与下面的更新 1 同步)

我在使用 TypeScript 类中尝试了以下引用,但 Visual Studio 用红色强调了“dgrid/Grid”文字,因为我猜 TS 编译器不知道 default.htm 文件中的经典 Dojo dojoConfig、baseUrl 和 dgrid 包声明。

更新 1 自发布以来,我通读了官方 TypeScript 手册中的第 10 章。以前我未能认识到声明为模块 MyType{} 或模块“外部/第三方”{} 的模块的重要性。外部模块的环境声明应该是文字。

背景:

要求声明:

0 投票
2 回答
6775 浏览

dojo - dgrid 分页示例

谁能指出我使用 dgrid 的分页扩展和 dgrid 的示例?这可以是参考链接或您键入的简单示例。我在我的代码中定义了它,将它与一个 OnDemandGrid 一起使用,它被添加到我的自定义网格的声明 mixin 中。我看到了页面导航的箭头,我看到了页面大小设置菜单,但是我的 rowsPerPage: 3 规范什么也没做。我仍然看到我的 7 个样本记录。

我正在使用修改后的缓存(数据对象存储),它为我的 dgrid 包装了 JsonRest 和内存存储。

0 投票
0 回答
2287 浏览

javascript - dojo dgrid 多个单元格编辑

是否可以同时编辑 dgrid 的多个单元格?

我知道我们可以通过双击/单击该单元格并更新它来一次编辑一个单元格。在onBlur该单元格中,已编辑的数据会针对该单元格进行更新。

但我的要求是:

  1. 单击每一行的编辑链接/编辑按钮,这将显示该行所有可编辑单元格的编辑器,
  2. 更新/编辑单元格,
  3. 然后单击同一行的保存按钮(将在编辑按钮旁边),
  4. 单击“保存”链接/图标时,已编辑单元格的值应保存到商店/服务器。

以下是 Grid 的一些列。

顺便说一句,我使用 dojo.store.JsonRest 作为 store 。
网格声明

目前我正在尝试这样的事情,但没有工作......

0 投票
1 回答
921 浏览

javascript - dojo editable-tree-dgrid : 创建或生成 dojo.store.JsonRest 支持的新行?

我正在尝试一个既是树又是可编辑的 dojo-dgrid。
因为我有以下要求,

我在父行的列(通常是最后一列)中有一个添加按钮/图标。单击该图标时,
应在此父行下生成/创建一个新的子行(如 store.newItem()),
并且此子行应该是可编辑的(有 11 列,其中 6 列是可编辑的,其中 3 列是digit.form.Select 和其他 3 个是文本字段)。

填充可编辑区域后,(最后一列中会有一个保存图标)单击保存图标应该保存这个新的子行。

顺便说一句,我使用 dojo.store.JsonRest 作为 store 。

网格声明如下:

此处发布了与同一网格的多个单元格编辑相关的另一个问题。

在 JsonRest 中,我只能看到 add、put、delete 类型的方法。想知道如何使用 JsonRest 作为存储来完成此要求。

谢谢。

0 投票
3 回答
462 浏览

dojo - 为什么除非我调整浏览器大小,否则我的 dojo dgrid 中的标题不会出现?

我有一个带有标题的 dgrid,除非我调整浏览器窗口的大小,否则这些标题不会出现。一旦我调整浏览器窗口的大小,标题就会出现。如何在不调整浏览器大小的情况下显示标题?

我没有正确调用 startup() 吗?有没有我可以触发的事件让 dgrid 认为浏览器已调整大小?

0 投票
1 回答
1165 浏览

javascript - 如何恢复dojo dgrid中的单个编辑行?

有没有办法恢复/重置 dojo-dgrid 中已编辑的行?

我可以看到 grid.revert() 确实清除了脏项目并调用了刷新方法,这将刷新整个网格。我不想要整个网格刷新。

是否可以在单击操作列上的还原/取消图标时仅重置/还原单个编辑的行(这将是此处此处提到的网格中的最后一列)

0 投票
0 回答
176 浏览

rest - Dojo 的带有非 REST 存储的新 Dgrid

我想使用 Dojo 的 dgrid 来替换我正在处理的项目中的 YUI 数据网格。目前,我使用查询字符串数据将数据输入 YUI 小部件,而不是基于 REST 的安排。我想继续使用查询字符串来传达信息,而不是实现一个新的基于 REST 的后端,但我发现的所有 dgrid 信息似乎都指向使用 REST。是否可以使用看似已贬值的 QueryStore 之类的东西?上次我尝试在不使用基于 REST 的数据存储的情况下使用 Dojo 实现某些东西时,我的表现并不好,尤其是当我开始尝试处理延迟加载时。