javascript - 刷新按钮调用javascript函数

标签 javascript jquery jquery-ui jqgrid refresh

在一个页面中,我有一个表单和一个 JQGrid。该表格用于输入特定过滤器。因此,该页面的 Javascript 包含一个重新加载数据以填充 JQGrid 的函数。 JQGrid 具有 loadonce: true,因此刷新按钮不执行任何操作。我需要让它调用我现有的函数。可能吗?

最佳答案

如果我理解正确,那么你的问题就存在了,因为 loadonce: true 选项改变了原始的 datatype("json" "xml") 到 "local"。它允许使用数据的本地分页、排序和过滤。在分页、过滤和排序的过程中,网格会被重新加载,所以本地重新加载是有意义的。

如果您需要从服务器重新加载网格,您应该首先恢复 datatype原始值,然后重新加载。

因此,如果您可以使用 navGridbeforeRefresh 回调来重置 datatype:

$("#grid").jqGrid("navGrid", "#pager", {
    beforeRefresh: function () {
        $(this).jqGrid("setGridParam", {datatype: "json"});
    }
});

如果您使用 free jqGrid然后你可以使用 reloadGrid 的新 fromServer: true 选项并且你可以使用 new style of options以及 navGrid 的新 reloadGridOptions 选项。代码会像

$("#grid").jqGrid({
    // standard jqGrid options
    navOptions: {
        // default options of navGrid
        reloadGridOptions: {fromServer: true}
    }
}).jqGrid("navGrid");

它将与 datatype:"json"datatype:"xml" 一起使用。

关于javascript - 刷新按钮调用javascript函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29215433/

相关文章:

javascript - Streamjs和linqjs有什么关系

javascript - Kendo、TypeScript 定义错误 :

php - 如何在Gridview Yii2中的条形码生成器中传递 "elementId"?

javascript - jquery $ 如何在没有冲突的情况下工作?

javascript - 可排序的 div 内的滚动条

javascript - Web Audio 振​​荡器在 Chrome 中意外地从一个频率滑到另一个频率

javascript - fetch-mock:没有为 POST 定义回退响应

javascript - Jquery,按宽度调整图像大小,保持高度恒定

按钮旁边的 Jquery UI 对话框文本

css - 调整窗口大小时如何更改表单中输入的位置?