tags:

views:

25

answers:

1

Folks, I am completely new to jQuery and JqGrid both. Usually I take some time to understand the underlying software before I ask around but I am unfortunately short of time and so my question may have a simple answer (RTFM). If you can give an alternative answer that would be nice :)

I am trying to draw a simple grid where one can edit the cell and save it (requesting in a post to url). I would like to save the resulting grid data in javascript or via edit url.

I tried the example at http://www.trirand.com/blog/jqgrid/jqgrid.html (click on Row Editing -> Input Types) but I do not get anything on my page neither do I get any js errors. All css and js file paths seem to be accurate.

Here is the code I tried (I am using jqGrid 3.8) (I looked at the thread http://stackoverflow.com/questions/2926080/jqgrid-editoptions-required-not-functioning but could not make it to work.)


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt; 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>My First Grid</title> 

<link rel="stylesheet" type="text/css" media="screen" href="css/custom-theme/jquery-ui-1.8.5.custom.css" /> 
<link rel="stylesheet" type="text/css" media="screen" href="css/ui.jqgrid.css" /> 

 <style> 
html, body {
    margin: 0;
    padding: 0;
    font-size: 75%;
}
</style> 
<script src="js/jquery-1.4.2.min.js" type="text/javascript"></script> 
<script src="js/i18n/grid.locale-en.js" type="text/javascript"></script> 
<script src="js/jquery.jqGrid.min.js" type="text/javascript"></script> 
<script type="text/javascript"> 
var lastsel2;
jQuery("#rowed5").jqGrid({
 datatype: "local",
 height: 250,
    colNames:['ID Number','Name', 'Stock', 'Ship via','Notes'],
    colModel:[
     {name:'id',index:'id', width:90, sorttype:"int", editable: true},
     {name:'name',index:'name', width:150,editable: true,editoptions:{size:"20",maxlength:"30"}},
     {name:'stock',index:'stock', width:60, editable: true,edittype:"checkbox",editoptions: {value:"Yes:No"}},
     {name:'ship',index:'ship', width:90, editable: true,edittype:"select",editoptions:{value:"FE:FedEx;IN:InTime;TN:TNT;AR:ARAMEX"}},  
     {name:'note',index:'note', width:200, sortable:false,editable: true,edittype:"textarea", editoptions:{rows:"2",cols:"10"}}  
    ],
 onSelectRow: function(id){
  if(id && id!==lastsel2){
   jQuery('#rowed5').jqGrid('restoreRow',lastsel2);
   jQuery('#rowed5').jqGrid('editRow',id,true);
   lastsel2=id;
  }
 },
 editurl: "edit.html",
 caption: "Input Types"

});
var mydata2 = [
  {id:"12345",name:"Desktop Computer",note:"note",stock:"Yes",ship:"FedEx"},
  {id:"23456",name:"Laptop",note:"Long text ",stock:"Yes",ship:"InTime"},
  {id:"34567",name:"LCD Monitor",note:"note3",stock:"Yes",ship:"TNT"},
  {id:"45678",name:"Speakers",note:"note",stock:"No",ship:"ARAMEX"},
  {id:"56789",name:"Laser Printer",note:"note2",stock:"Yes",ship:"FedEx"},
  {id:"67890",name:"Play Station",note:"note3",stock:"No", ship:"FedEx"},
  {id:"76543",name:"Mobile Telephone",note:"note",stock:"Yes",ship:"ARAMEX"},
  {id:"87654",name:"Server",note:"note2",stock:"Yes",ship:"TNT"},
  {id:"98765",name:"Matrix Printer",note:"note3",stock:"No", ship:"FedEx"}
  ];
for(var i=0;i < mydata2.length;i++)
 jQuery("#rowed5").jqGrid('addRowData',mydata2[i].id,mydata2[i]);


</script> 

</head> 
<body> 
<table id="rowed5"></table> 
</body> 
</html> 
A: 

I found the answer in the question http://stackoverflow.com/questions/3590594/spreadsheet-like-inline-editing-in-jqgrid where @oleg has given a link http://www.ok-soft-gmbh.com/jqGrid/ClientsideEditing4.htm

Thanx @Oleg!

serverman
You welcome serverman!
Oleg