jquery-ui - 如何添加 jqGrid 中的默认事件?

标签 jquery-ui jqgrid jquery

我在标准 jqGrid 配置的各种事件中都有所需的通用代码。

我使用 $.extend($.jgrid.defaults, { }); 为以下内容设置一些代码:

  • loadError()
  • beforeRequest()
  • loadComplete()
  • gridComplete()

现在,当我定义网格实例时,我可能希望在任何这些事件中执行更多代码。

我最初的解决方案是使用全局变量,例如:loadCompleteEx(),如果定义了它们,则在默认方法调用结束时调用它们。如果页面上只有一个网格,那就太好了,但我正在尝试实现一种解决方案,无论页面上有多少个网格,该解决方案都可以工作。

是否有某种方法可以 Hook 并添加一个方法来在触发这些事件时执行?我正在使用 jqGrid 4.1.2 和 jQuery 1.6。

预先感谢您的帮助!

最佳答案

您可以.bind()将您自己的函数绑定(bind)到事件,以便您的函数随事件一起执行。您可以使用它来将不同的事件绑定(bind)到每个网格,或者一次将一个函数绑定(bind)到每个网格。

.bind() 还允许绑定(bind)到标准 JavaScript 事件、自定义事件,甚至是稍后使用 .trigger() 调用的未定义字符串。

它需要附加在选择器之后,选择器可以根据您的情况选择特定网格或多个网格。

$('#Your-Grid-Selector').bind('eventToBind', functiontoBind() {
            alert('Triggered eventToBind');
        });

jQuery Documentation

编辑:此问题可能与 this SO Question 重复。 ,它有一个很好的解决方案,您可以使用它来解决这个问题。

关于jquery-ui - 如何添加 jqGrid 中的默认事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7258804/

相关文章:

jquery-ui - jQuery UI 对话框按钮焦点

javascript - 启用和禁用 jquery 单击可排序

javascript - 覆盖 jqGrid 中的默认导航按钮功能

javascript - 使用 jQuery 获取表中的列 id

php - 垂直删除 div 之间的空间 [Bootstrap 3]

javascript - 在jquery中使用索引动画元素

search - JQGrid:在过滤器工具栏中剪切和粘贴不会触发过滤

jquery - 将当前行值获取到 jQuery 事件处理程序中而不循环

jquery - html2canvas 不渲染 CDN 图片

javascript - 无法加载资源 : the server responded with a status of 404 (Not Found) with nodejs