【问题标题】:jqGrid: sending edit datajqGrid:发送编辑数据
【发布时间】:2011-03-22 19:35:57
【问题描述】:

我正在尝试在 jqgrid 上使用表单编辑。当数据发送到网络服务器时,我希望在获取/发布数据中发送一个额外的字段。

听起来 editData 是我想要使用的。如何将其挂接到导航栏?

<script type="text/javascript">
    $(document).ready(function(){ 
        if (jQuery('#ReferenceGrid').attr('role') == 'undefined' || jQuery('#ReferenceGrid').attr('role') == null) {
            var lastSel;
            jQuery('#ReferenceGrid').jqGrid({
                url: '/PlannedWorkOrder/Items/',
                datatype: 'json',
                postData: { referenceNumber: $('#reference').text() },
                colNames: ['Platinum Part Number', 'Quantity'],
                colModel: [
                    { name: 'PlatinumPartNumber', index: 'PlatinumPartNumber', width: 300, sortable: false, editable: true },
                    { name: 'Quantity', index: 'Quantity', width: 300, sortable: false, editable: true, editrules:{integer: true}  },
                ],
                jsonReader: {
                    cell: "",
                    id: "PlatinumPartNumber",
                    repeatitems: false
                },
                search:false,
                viewrecords: true,
                height: '100%',
                sortorder: 'desc',
                caption: 'Details',
                altRows: true,
                pager : '#gridpager',
                pgbuttons: false,
                pginput: false,
                pgtext: false,
                viewrecords: false,
                editurl: '/PlannedWorkOrder/Item/'
            })
            jQuery("#ReferenceGrid").navGrid('#gridpager', { add: true, edit: true, search: false });
        }
        else {
            $("#ReferenceGrid").setGridParam({ postData: { firstName: $('#Reference').val(), lastName: $('#Reference').val() } });
            $("#ReferenceGrid").trigger("reloadGrid")
        }
    });

</script>

【问题讨论】:

    标签: jqgrid


    【解决方案1】:

    要添加将在表单编辑中添加/编辑数据期间发送的其他参数,您可以使用editData

    jQuery('#ReferenceGrid').jqGrid('navGrid',"#gridpager",
        {},
        {editData: {firstName: $('#Reference').val(),
                    lastName: $('#Reference').text()}}, // edit options
        {editData: {firstName: $('#Reference').val(),
                    lastName: $('#Reference').text()}); // add options
    

    此外,您使用jQuery('#ReferenceGrid').attr('role') 的构造看起来有点奇怪。可能您在我的旧建议How to filter the jqGrid data NOT using the built in search/filter box 中找到了相同问题的解决方案。我建议您使用postData 作为函数:使用

    postData: { referenceNumber: function() { return $('#reference').text(); } },
    

    而不是

    postData: { referenceNumber: $('#reference').text() },
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-04-15
      • 2011-10-01
      • 1970-01-01
      • 2016-02-03
      • 2013-04-06
      • 2017-12-21
      • 1970-01-01
      相关资源
      最近更新 更多