如何从jqgrid将我的id传递给控制器

时间:2014-02-13 10:33:49

标签: jquery jqgrid delete-row

我正在使用concrete5 cms,我试图在我的Web应用程序中实现jqgrid。我在表单中进行了jqgrid视图,但我不知道如何编辑,删除jqgrid中的所有函数。

问题是如果我在jqgrid中选择行并删除,它在前视图中被删除但是如何在我的数据库中删除以及如何将sID值传递给我的控制器。

enter image description here

var myData = <?php echo json_encode($sl) ?>;

    $("#statGrid").jqGrid({
        caption: 'Status List',
        datatype:'local',
        data: myData,
        mtype:'POST',
        colNames:['sID','Status Name','Type','Description'],
        colModel:[ 
            {name:'status_id',editable:true }, 
            {name:'status_name',editable:true },
            {name:'status_type',editable:true },
            {name:'status_description', editable:true, edittype: 'textarea' } ],
        width: "777",
        height: "auto",
        pager:'#statPager',
        rowNum:5, 
        rowList:[5,10,20,30],
        rownumbers: true,
        viewrecords: true,
        recreateForm:true,
        gridView: true,
        autoencode: true,
        editurl: "editStatus",
        loadui:'enable'

    }).navGrid("#statPager",{add:false, edit:true, view:false, del:true, search:false, refresh:false });

如何通过网格中的参数传递精确的sID。请指导我关于jqgrid。解决这个问题。如果我的问题中有任何错误对不起,我会提出我的问题技巧。

1 个答案:

答案 0 :(得分:1)

我认为'status_id'列包含您希望在网址"editStatus"中在服务器端看到的唯一ID。如果您要将key: true添加到'status_id'列的定义中。在这种情况下,列中的值将用作rowid(表示数据行的网格的id元素的<tr>属性的值)。在删除行期间将发布到服务器的数据将被描述为here

您的代码的小评论。您应该将gridView: true替换为gridview: true,将width: "777"更改为width: 777,删除recreateForm:true(因为它是表单编辑的选项,而不是jqGrid的选项)。如果您需要将某些常用值设置为colModel editable:true,则可以从editable:true中删除属性colModel,然后使用jqGrid选项cmTemplate: {editable: true}。有关详细信息,请参阅the answer