ParamQuery:如何处理多个网格的事件?

时间:2014-03-06 14:40:57

标签: javascript jquery

我正在使用ParamQuery在网页上加载网格。

我在选择器#tabela中有两个网格:

  • $ objOrcamento是主网格
  • $ grid是详细信息网格

现在我想处理两个事件,例如cellBeforeSaveload等,但我一直收到错误:

Uncaught TypeError: Object #<Object> has no method 'pqGrid'

例如,为了处理cellBeforeSave中的$grid,我尝试了:

var $grid={
   //colModel, dataModel, etc...

  cellBeforeSave: function (evt, ui) {
            var isValid = $grid.pqGrid("isValid", ui);
            if (!isValid.valid) {
                evt.preventDefault();
                return false;
            }

   },
}

这不起作用,所以我在var $grid之外尝试了:

$("#tabela").on("pqgridcellbeforesave", function (event, ui) {
        var isValid = $grid.pqGrid("isValid", ui);
        if (!isValid.valid) {
            evt.preventDefault();
            return false;
        }
});

但这会产生同样的错误。 处理多个网格中的事件的正确方法是什么?

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您的$grid 网格,它只包含用于初始化pqgrid插件的选项。

尝试更像这样的事情:

$("#tabela").pqGrid({
   //colModel, dataModel, etc...

  cellBeforeSave: function (evt, ui) {

        // have to call pqgrid on a jquery object:
        var isValid = $("#tabela").pqGrid("isValid", ui);
        if (!isValid.valid) {
            evt.preventDefault();
            return false;
        }
   },
});