如何在jqGrid中将额外参数传递给Add和Edit url

And*_*rus 0 jqgrid

订单ID存储在变量_documentId中,并在运行时通过ajax调用更改,如果新订单保存为实际订单.

如果向jqGrid添加新的详细信息行添加表单网址或内联编辑网址也需要此ID.我尝试使用postdata但是如果调用Edit和Add url则不传递_documentId.如何将_documentId值传递给那些网址?

   var _documentId; // assigned from ajax call after save.

   $(function () {
        var grid = $("#grid");
        grid.jqGrid({
            postData: {_documentId: function() { return _documentId } },
            editurl: 'Edit',  // How to pass _documentId value to this controller ?

            url: 'GetData',
            datatype: "json",
            mtype: 'POST',
            scroll: 1,
            multiselect: true,
            multiboxonly: true, 
            scrollingRows : true,
            autoencode: true,
            prmNames:  {id:"_rowid", oper: "_oper" }, 
            colModel: <%= Model.ColModel() %>,
            gridview: true,
            toppager: true,
            viewrecords: true
            });

      grid.navGrid("#grid_toppager", {}, {}
        { url: 'Add' }  // How to pass _documentId value to this controller ?
      );                
Run Code Online (Sandbox Code Playgroud)

Ole*_*leg 5

在表单编辑的情况下,您应该使用editData参数将其他数据发送到服务器.另一种方法是修改onclickSubmitbeforeSubmit事件处理程序中的postdata.您当然可以在serializeEditData事件处理程序中执行此操作.使用onclickSubmit,params.url如果您需要将信息真正放在URL中而不是将要发送到服务器的数据中,您可以轻松修改URL().

在联编辑的情况下,你可以使用extraparam的参数editRow或使用serializeRowData事件处理程序.