views:

47

answers:

2

I have a list of products on my site. I draw it with jqGrid. Also I have a form, to create new product, or update existing one. Is there any way to set in jqGrid, that when I press 'edit' button in grid, it redirects me to page like

'mysite/product/edit/id/{id}'

Here is my grid script:

$(document).ready(function() {
    $("#list").jqGrid({
        url:'product/getjson',
        datatype: "json",
        colNames:['id','Name', 'description', 'Publication date','Picture'],
        colModel:[
            {name:'id',index:'id', width:55},
            {name:'name',index:'name', width:90},
            {name:'description',index:'description', width:200},
            {name:'pubDate',index:'pubDate', width:200, align:"right"},
            {name:'picPath',index:'picPath', width:200, align:"right"},
            ],
            rowNum:10,
            rowList:[10,20,30],
            pager: '#pager2',
            sortname: 'id',
            viewrecords: true,
            sortorder: "desc", caption: 'Products'});
           $("#list").jqGrid('navGrid','#pager2',{edit:true,add:true,del:true});
})
A: 

Try to add editurl field in your config:

$("#list").jqGrid({
    editurl:'mysite/product/edit/'
});

id will be passed in row data

Ololo
+1  A: 

You can change url with respect of onclickSubmit function (see http://www.trirand.com/jqgridwiki/doku.php?id=wiki:form_editing#editgridrow):

$("#list").jqGrid({
    url:'product/getjson',
    // ...
});
$("#list").jqGrid('navGrid','#pager2',{edit:true,add:true,del:true},
                  { onclickSubmit: function(rp_ge, postdata) {
                      rp_ge.url = 'mysite/product/edit/id/' + postdata.list_id;
                    }
                  });
Oleg