如何在jqgrid编辑/添加/删除选项上打开局部视图作为弹出窗口

时间:2016-11-30 05:01:12

标签: jquery asp.net-mvc c#-4.0 jqgrid

当我点击添加/编辑按钮时,它应该将部分视图表单显示为模式弹出窗口。

 $('#list').jqGrid({  
       caption: "Employee Details",  
       url: '/Employee/GetEmployee/',  
       datatype: "json",  
       contentType: "application/json; charset-utf-8",  
       mtype: 'GET',  
       colNames: ['Address', 'City', 'Id', 'Name'],  
       colModel: [  
             { name: 'Address', index: 'Address', width: 150 },  
             { name: 'City', index: 'City', width: 150 },  
             { name: 'Id', index: 'Id', width: 150 },  
             { name: 'Name', index: 'Name', width: 150 }  
       ],  
       rowNum: 10,  
       loadonce: true  

   });  

   jQuery("#list").jqGrid('#pager', { edit: false, add: false, del: false});  

我怎样才能实现这一点......非常感谢你的帮助!!!

1 个答案:

答案 0 :(得分:0)

jqGrid作为JavaScript库工作,不能使用任何部分视图。如果要显示编辑/添加/删除按钮,则应替换

jQuery("#list").jqGrid('#pager', { edit: false, add: false, del: false});

jQuery("#list").jqGrid('navGrid', '#pager');

并在editable: true的列中添加colModel属性,您希望允许用户进行编辑。你也必须在jqGrid中使用pager: '#pager'选项。您还必须在页面的HTML标记中包含空div <div id="pager"></div>。确切地说,你的问题的答案取决于你使用的jqGrid的版本和jqGrid的分支。我开发的Free jqGrid fork允许使用jqGrid的pager: true选项并跳过'#pager'方法的navGrid参数。有关详细信息,请参阅the wiki article

此外,您还可以删除不需要的index属性并删除width: 150属性,因为150是width属性的默认值。为了能够编辑数据,您必须添加editurl参数和MVC操作的URL,这应该在编辑时调用。