2017-07-07 42 views
0

我使用的jqGrid guriddo 5.2.1的jqGrid:editData没有被发送到服务器

我已经按照提供给这些问题的答案:

但我定义的editData没有获取sen t到端点。

这里是我的jqGrid寻呼机定义代码:

$('#jqGrid').navGrid('#jqGridPager', 
      // the buttons to appear on the toolbar of the grid 
      { edit: true, 
       add: true, 
       del: true, 
       search: false, 
       refresh: false, 
       view: false, 
       position: "left", 
       cloneToTop: false, 
       mtype: 'POST', 
       editData: { 
        mediaPlanId : function() { return mpId; } 
       }}, 
      // options for the Edit Dialog 
      { 
       editCaption: "Edit Item", 
       recreateForm: true, 
       checkOnUpdate : true, 
       checkOnSubmit : true, 
       closeAfterEdit: true, 
       errorTextFormat: function (data) { 
        return 'Error: ' + data.responseText; 
       } 
      }, 
      // options for the Add Dialog 
      { 
       closeAfterAdd: true, 
       recreateForm: true, 
       errorTextFormat: function (data) { 
        return 'Error: ' + data.responseText; 
       } 
      }, 
      // options for the Delete Dailog 
      { 
       errorTextFormat: function (data) { 
        return 'Error: ' + data.responseText; 
       } 
      } 

    ); 

MPID定义的jqGrid的和jqGridPager功能外,在页面级别。我试着发送1的值,但这也不起作用。我怀疑我错过了一些简单的事情,但我无法弄清楚什么。

+1

你使用的是哪个版本? –

+0

谢谢指出!我更新了这个问题。 –

回答

1

您将editData参数放在错误的地方。 navGrid的选项非常糟糕,可以很容易地发生错误。我在free jqGrid fork的the wiki article中详细描述了该问题,这是我开发的。

当前您将editData放入navGrid的选项中,而不是将其置于编辑/添加的选项中,这些选项为editGridRow的选项。问题是解决了在自由jqGrid的,但如果你不喜欢使用的Guriddo jqGrid JS商业版本,那么我会建议你重写代码以下列方式:

var myErrorFunc = function (data) { 
     return 'Error: ' + data.responseText; 
    }, 
    addEditFormOptions = { 
     editCaption: "Edit Item", 
     recreateForm: true, 
     checkOnUpdate : true, 
     checkOnSubmit : true, 
     closeAfterEdit: true, 
     closeAfterAdd: true, 
     editData: { 
      mediaPlanId : function() { return mpId; } 
     }, 
     errorTextFormat: myErrorFunc 
    }, 
    delOptions = { 
     errorTextFormat: myErrorFunc 
    }; 

$('#jqGrid').navGrid('#jqGridPager', { search: false, refresh: false }, 
    addEditFormOptions, addEditFormOptions, delOptions); 
1

我认为,更好的办法是先读documentation of Guriddo jqGrid,它会引导你在哪里放置参数。

+0

我没有意识到有文档的更新。我一直提到旧的jqgrid wiki。谢谢你让我知道! –