在jqgrid中实现删除和编辑操作

时间:2011-08-20 22:40:22

标签: javascript jquery web-services jqgrid grid

我有以下JQgrid实现

    colModel: [
                { name: 'NameEn', index: 'NameEn', width: 100, align: 'left' },
                { name: 'Desc', index: 'Desc', width: 100, align: 'left' },
                { name: 'ID', index: 'ID', width: 100, align: 'left', hidden:true }
],
    caption: "Management",
    gridview: true,
    rownumbers: true,
    rownumWidth: 40,
    scroll: 0,
    rowNum: 100,
    sortname: 'ID',
    pager: '#pager',
    sortorder: "asc",
    viewrecords: true,
    autowidth: true,
    width: '100%',
    height: '100%',
    jsonReader: { root: "GridData", page: "CurrentPage", total: "TotalPages", records: "TotalRecords", repeatitems: false, id: "00" }

};

SectorGrid.prototype.SetupGrid = function (selector) {
    jQuery(selector).html('<table id="grid"></table><div id="pager"></div>');
    var grid = jQuery("#grid").jqGrid(this.gridConfiguration);

    jQuery("#grid").navGrid('#pager',{edit:false,add:false,del:true,search:false})
};

我想添加删除功能,删除调用带有网址http://localhost/services.svc/sector(id的网络服务),服务只需要获取ID,它将自行处理所有内容我也想使用不同的网址编辑数据http://localhost/services.svc/sector并且它接收具有上述相同信息的json对象。我真的试图配置它,但它不会工作可以有人帮助我,这很重要,如果你使用jqgrid或自定义按钮中的删除选项,但我不想使用editurl属性。

请举一个完整的例子如何实现这个继续上面的代码

更新:休息方法

[WebInvoke(UriTemplate = "Sector({iD})/", Method = "DELETE",  ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        [OperationContract]
        bool DeleteSector(string iD)

提前致谢

1 个答案:

答案 0 :(得分:2)

尝试在表单

中使用navGrid
jQuery("#grid").jqGrid('navGrid', '#pager',
    {edit: false, add: false, search: false}, {}, {},
    { // Delete parameters
        ajaxDelOptions: { contentType: "application/json" },
        mtype: "DELETE",
        serializeDelData: function () {
            return ""; // don't send and body for the HTTP DELETE
        },
        onclickSubmit: function (params, postdata) {
            params.url = '/Sector(' + encodeURIComponent(postdata) + ')/';
        }
    });