2011-08-20 82 views
1

删除和编辑操作我有以下的jqGrid实施实施中的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}) 
}; 

我想添加删除功能,删除调用带有URL http://localhost/services.svc/sector(id一个Web服务)和服务只取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) 

在此先感谢

+0

The UR L'http://localhost/services.svc/sector(id)'看起来有点奇怪。你能否包含WCF服务的'sector'方法的原型? – Oleg

+0

在问题 – Madi

回答

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) + ')/'; 
     } 
    }); 
+0

更新嗨奥列格,感谢您的答复,但它不够清楚(我与jquery :))我添加了你的代码到我的网格导航和自定义的网址我应该做什么?我怎么能发送ID?请你再解释一下,再次感谢我的感谢 – Madi

+0

@Amadi:'postdata'应该是'id'。它应该是全部。如果程序仍然无法运行,您可以在[Fiddler](http://www.fiddler2.com/fiddler2/)中验证将向哪个URL发送DELETE请求。 – Oleg

+0

感谢它做得很好 – Madi