问题标签 [extjs4.1]

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 投票
2 回答
555 浏览

jquery - 如何使用 Extjs 和 jQuery 拖放?

我有带有gridviewdragdrop插件和 jquery UI Droppablediv 的 extjs 网格。

也许有人尝试在这两者之间编写某种代理?

我正在尝试fullcalendar通过从 Extjs 网格面板拖动将事件添加到(jquery 插件)。

谷歌没有那么有帮助。现在我正在尝试查看 jquery droppable 插件的源代码,也许我会找到一种方法来触发 drop 事件或其他东西,但这不太可能。

欢迎任何建议。

0 投票
3 回答
11523 浏览

extjs - 在启用自动同步的同步后存储执行某些操作

我正在尝试检测并删除同步后仍在存储但未添加到数据库中的那些字段(成功:false)。然后,向用户返回一条错误消息(带有一些错误代码)。但是,我只能在商店文档中看到“beforesync”事件。

有没有可能做这样的事情?我正在尝试使用“更新”事件,但只有在同步成功时才会在同步后调用它们(否则它们只会在同步之前调用)。

我真的找不到同步后触发的事件。有什么解决办法吗?

请注意,我正在使用自动同步,这就是为什么我不能挂钩回调,否则一切都会更容易。

我可以在文档中看到的另一个重要点是:

代码:

为什么 REJECT 事件永远不会被触发?我认为如果成功 = false REJECT 会被调用,我是否需要类似 404 的东西才能获得该结果?

编辑:不,我找不到触发更新事件的 REJECT 版本的方法。有什么建议吗?

0 投票
1 回答
650 浏览

extjs - Ext JS 扩展 Ext.Toolbar.TextItem 时的奇怪行为

我正在尝试扩展 Ext.Toolbar.TextItem 以创建一个简单的时钟。这样做的目的是能够在我的应用程序的状态栏中添加时钟。我的扩展类如下所示:

我不确定我这样做是否正确,在我尝试折叠面板之前它工作正常。我的布局基于 Ext.container.Viewport。

这是我得到的错误:http: //vimeo.com/43978383

我不知道怎么了:(

欢迎任何帮助!

更新

这是我更新的组件:

这现在有效,但是当我取消注释负责更新文本的 2 行时,所有崩溃:/

我收到这个错误

el 未定义
var id = el.id,

0 投票
1 回答
325 浏览

extjs - ExtJS 4.1 中的分页问题

我发现当网格具有分页属性时,您不应该第二次从服务器发送元数据属性。因为如果您第二次发送分页中断。我只需要先发送。我应该如何克服这个问题?问题来自我在文档中找到的这段代码。

0 投票
1 回答
3640 浏览

extjs4 - 带时钟的 Ext JS 状态栏

我正在尝试用时钟创建一个状态栏。我在 sencha 示例中找到了示例,但我正在尝试以更面向对象的方式构建它。

});

第一个时间组件显示它显示正确的日期和时间,但它不更新。

问题可能是 TaskManager 或我的听众。

而不是他们,我试过这样做:

但没有运气:(

我知道这可能是一个小错误,但找不到。

0 投票
2 回答
20415 浏览

formatting - 如何在 extjs 中使用荷兰语格式格式化数字字段?

我想将用户输入的数字格式化为荷兰语格式。IE。使用十进制分隔符作为千位分隔符作为

我想在模糊上格式化我的数字字段,上面的代码工作正常,但我的要求是获得这样的格式 - '000000.000,00'。如何在 extjs 中做到这一点?

0 投票
1 回答
4002 浏览

local-storage - Extjs4 localstorage -- 如何删除所有记录?

本地存储代理似乎在 Extjs 4.1 中有相当多的错误。请告诉我我做错了什么。

我正在尝试(像其他人一样)从服务器加载数据,然后将其存储在本地以供离线使用。我的问题涉及刷新数据(在浏览器中点击重新加载)。 removeAll()不删除任何记录。我读过您可以通过调用clear()本地存储代理本身来清除本地存储。删除记录时,不会重置密钥生成器。我担心这最终会导致问题。

在我的代码中,我在做什么会导致 LocalStorage 行为不端?我知道在模型上正确设置 id 存在一些技巧,但我认为我做对了。

这是模型和商店:

这是尝试用于removeAll()清除本地存储的代码:

本地存储代理写入我的浏览器的内容:

首次加载

第二次重新加载确实如此。它不会删除以前的:

第二次加载。 第一次加载数据不会被删除。

如果我尝试使用proxy.clear(),记录会消失,但不会重置 idGenerator 种子:

计数器未重置!

谢谢你的眼球。

更新

我已经能够通过在实例化我的本地存储之前直接重置值来重置本地存储的计数器。显然,这超出了预订范围,因此并不理想。

更新 DEUX

经过进一步思考,我认为不重置计数器是正确的。当 mysql 中的表被截断时,您不会重置序列号。如果使用已删除记录的某些缓存 id(假设 id 为 1)从表中提取数据,这可能会导致问题。将返回一条完全不同的记录,而不是被删除的记录。好吧,有道理。

仍然,为什么他妈的不起作用store.removeAll(); store.sync()

0 投票
1 回答
2575 浏览

forms - 验证器函数在文本字段中被触发两次

以下代码使用 ExtJs 中文本字段的验证器配置:

在代码中,validateOnBlur 设置为 true,而 validateOnChange 设置为 false。

问题是,当用户第一次聚焦该字段并模糊时,验证器函数会被触发两次,如随附的屏幕截图所示。

如果用户第二次再次聚焦该字段并模糊,则验证器只会被触发一次,并且对于所有后续此类操作也是如此。

但是第一次,当用户聚焦该字段并模糊(通过鼠标单击或 Tab 退出)时,验证器函数会被触发两次。

任何人都可以指导这背后的可能原因是什么以及如何阻止这种情况,或者这是 ExtJs 4.1 版中的错误?

提前致谢

在此处输入图像描述

0 投票
3 回答
8620 浏览

sorting - 具有本地排序的缓冲存储(客户端)

我有一个缓冲网格,在该网格上实现了本地排序功能(客户端)。我想在商店重新加载时删除列标题上的排序指示(较暗的背景和小箭头)。

有谁知道如何在 4.1 中实现这一点?

为了更清楚地说明这一点:

希望我的列是可排序的。我不希望他们在禁用排序的情况下进行初始化。用户应该能够单击标题并对其进行排序。但是,我想要的是能够以编程方式关闭排序。即,删除从用户点击中应用的任何排序类(例如较暗的背景和小排序方向箭头)。

我这样做的原因是因为我使用的是修改后的缓冲存储,它允许我对所有缓冲数据(不仅仅是显示的块)进行本地排序(客户端)。通常,使用缓冲存储会禁用本地排序,因为它只会对显示在网格中的数据进行排序 - 而不是内存中的所有数据,所以 Sencha 的人让任何具有缓冲存储的网格自动禁用本地排序- 只有远程分拣有效。好吧,正如我所说,我的已经过修改,所以它可以工作 - 但是当这个缓冲存储重新加载数据库中的新数据时,它不喜欢sortOnLoad普通网格理所当然地获得的便利功能。在我的用例中,删除排序状态比覆盖排序状态更合乎逻辑sortOnLoading功能并使其对新数据应用相同的排序,因此,这个问题。

我现在已经解决了,我会尽快发布一个答案以及我使用本地排序的缓冲存储的实现,以防万一有人感兴趣并供我自己将来参考。

我还应该指出,我非常清楚在需要缓冲的存储上进行本地排序所带来的客户端性能损失(而不是仅对服务器上的数据使用远程排序)。我知道这可能是 Sencha 不支持对其缓冲存储进行本地排序的原因。我已经评估了这方面的所有利弊,在我的特定用例中,这对我来说是最明智的做法。

0 投票
2 回答
2326 浏览

extjs - 从 Ext JS 4.1 中的列菜单重命名列标题

在此处输入图像描述

是否可以在此菜单中添加一个项目以重命名列标题?