在ExtJS中处理来自HTML定位标记的事件

我在ExtJS中构建了一个大型应用程序,并且正在寻找处理应用程序中任何位置的自定义事件的最佳方法。 例如,我可能想在应用程序中的某些文本中放置一个锚标记,这会在我的应用程序中打开一个自定义组件。 此刻,我听取对主体的点击,并且如果目标有一个以特定格式应用于其的css类,则使用它执行操作。

例如,我可能会有:

<a class="ACTION-View-Customers">View Customers</a>

我的事件处理程序将拉开classname并执行操作。 这种方法的问题是很难将很多参数传递给处理程序。 我建议在锚的类或href标记内使用JSON,如下所示:

<a href="#" class="{ action: 'View', options: { name: 'Customers', type: 'All' } }">View Customers</a>

你能想到这种方法的任何问题,并建议任何替代方案? 谢谢。


如果可以帮助,我个人不会在HTML本身中使用额外的元。 我会将特定ID应用于特定用途的链接,并将单击事件绑定到该对象。 我还发现了DomQuery对象(需要查找和引用锚点),它们有趣。 由于我通常在Ext JS中使用JQuery适配器,我将使用JQuery的选择器来定位特定的DOM元素和JQuery的绑定函数[.click(fn)],同时在函数本身内部使用Ext。 JQuery和Ext JS做了一个很棒的组合,尤其是使用新的JQuery 1.3.1,这实际上可以加快速度。


我建议使用HTML5的data-属性。 例如:

<a href="#" data-event="{ action: 'View', options: { name: 'Customers', type: 'All' } }">View Customers</a>

var eventsource = link.getAttribute("data-event");

HTH


您可能知道,HTML标签接受任何命名属性。 因此,您可以创建一些特定的属性并将任何值传递给它们(fe my-bogus-param="something" ),借此您可以开发任何复杂的参数传递系统。 然后你可以在事件处理程序中解析这些属性。

链接地址: http://www.djcxy.com/p/19537.html

上一篇: Handling events from HTML anchor tags in ExtJS

下一篇: Handling itemclick event on tree panel Extjs 4