1

Hi i am using the jqgrid in my struts2 hibernate application. I got all the reponse correctly in my view page, i can see this via my firebus tool. But my issue is how could i print the value in grid. I will my jsp page reponse below this page.

Here is my script in my jsp page

       <script type="text/javascript">

jQuery(document).ready(function(){
  jQuery("#list2").jqGrid({ 
    url:'server.action?q=2', 
    datatype: "json", 
    colNames:['id','name'], 
    colModel:[ {name:'id',index:'id'}, 
               {name:'name',index:'name'}], 
    rowNum:10, 
    pager: '#pager2', 
    sortname: 'id', 
    viewrecords: true, 
    sortorder: "desc", 
    caption:"JSON Example" }); 
jQuery("#list2").jqGrid('navGrid','#pager2',{edit:false,add:false,del:false});
});

</script>

my reponse comee like this

{"allUsers":"success",
"allUsersViaScript":"success",
"cell":[
   {"id":1,"name":"Aaronsburg","stateCode":"39"},
   {"id":2,"name":"Abbeville","stateCode":"2"},
   {"id":3,"name":"Abbeville","stateCode":"11"},
   {"id":4,"name":"Abbeville","stateCode":"19"},
   {"id":5,"name":"Abbeville","stateCode":"26"},
   {"id":6,"name":"Abbeville","stateCode":"41"},
   {"id":7,"name":"Abbot","stateCode":"22"},
   {"id":8,"name":"Abbotsford","stateCode":"49"},
   {"id":9,"name":"Abbott","stateCode":"44"},
   {"id":10,"name":"Abbottstown","stateCode":"39"},
   {"id":11,"name":"Abbyville","stateCode":"17"},
   {"id":12,"name":"Abell","stateCode":"21"},
   {"id":13,"name":"Abercrombie","stateCode":"29"},
   {"id":14,"name":"Aberdeen","stateCode":"14"},
   {"id":15,"name":"Aberdeen","stateCode":"18"},
   {"id":16,"name":"Aberdeen","stateCode":"21"},
   {"id":17,"name":"Aberdeen","stateCode":"26"},
   {"id":18,"name":"Aberdeen","stateCode":"28"},
   {"id":19,"name":"Aberdeen","stateCode":"36"},
   {"id":20,"name":"Aberdeen","stateCode":"42"},
   {"id":21,"name":"Aberdeen","stateCode":"48"},
   {"id":22,"name":"Aberdeen Proving Ground","stateCode":"21"},
   {"id":23,"name":"Abernant","stateCode":"2"},
   {"id":24,"name":"Abernathy","stateCode":"44"},
   {"id":25,"name":"Abie","stateCode":"30"},
   {"id":26,"name":"Abilene","stateCode":"17"},
   {"id":27,"name":"Abilene","stateCode":"44"},
   {"id":28,"name":"Abingdon","stateCode":"15"},
   {"id":29,"name":"Abingdon","stateCode":"21"},
   {"id":30,"name":"Abingdon","stateCode":"46"},
   {"id":31,"name":"Abington","stateCode":"7"},
   {"id":32,"name":"Abington","stateCode":"20"},
   {"id":33,"name":"Abington","stateCode":"39"},
   {"id":34,"name":"Abiquiu","stateCode":"33"},
   {"id":35,"name":"Abita Springs","stateCode":"19"},
   {"id":36,"name":"Abrams","stateCode":"49"},
   {"id":37,"name":"Absaraka","stateCode":"29"},
   {"id":38,"name":"Absarokee","stateCode":"27"},
   {"id":39,"name":"Absecon","stateCode":"32"},
   {"id":40,"name":"Acampo","stateCode":"5"},
   {"id":41,"name":"Accident","stateCode":"21"},
   {"id":42,"name":"Accokeek","stateCode":"21"},
   {"id":43,"name":"Accomac","stateCode":"46"},
   {"id":44,"name":"Accord","stateCode":"20"},
   {"id":45,"name":"Accord","stateCode":"35"},
   {"id":46,"name":"Accoville","stateCode":"50"},
   {"id":47,"name":"Ace","stateCode":"44"},
   {"id":48,"name":"Achille","stateCode":"37"},
   {"id":49,"name":"Achilles","stateCode":"46"},
   {"id":50,"name":"Ackerly","stateCode":"44"}
],
"cityList":null,
"page":1,
"records":29738,
"rowNum":null,
"rows":50,
"total":595,
"userList":[],
"userList1":null
}

and also my struts.xml comes like this.

<action name="server" class="com.actions.userList" method="getAllUsersViaScript" >
   <result name="success" type="json" >/WEB-INF/list.jsp</result>
</action>

it is the code.

And also i have write the setter and getter for all my variables that i have initialised in my java page. Anyone have any idea about what is the mistake on my side.

EDIT#1

When i paste the code it is generate the jqgrid template in my jsp page but the data is not populate in the jqgrid evethouh i got all the data correctly in my console. The pagination and all working in the grid but the data i need to be listed i cannot insert into grid.

user359187
  • 2,269
  • 6
  • 29
  • 44

1 Answers1

3

Use this in your html body part

 <table id="list2" cellpadding="0" cellspacing="0" class=child>    
</table>
 <div id="pager2" class="scroll" style="height:50px"></div> 
 <table>

EDIT : Ok Which Version of jqGrid are you using? As I can see you are not using "postData".

Check If below example from my working code :

  $grid = $("#table");
        $grid.jqGrid({
            url: '../../Services/BranchService.asmx/getBranches',
            datatype: 'json',
            mtype: 'POST',
            ajaxGridOptions: { contentType: 'application/json; charset=utf-8' },
            serializeGridData: function (postData) {

                if (postData.searchField === undefined) postData.searchField = null;
                if (postData.searchString === undefined) postData.searchString = null;
                if (postData.searchOper === undefined) postData.searchOper = null;
                //if (postData.filters === undefined) postData.filters = null;
                return JSON.stringify(postData);
            },

            jsonReader: {
                root: "d.rows",
                page: "d.page",
                total: "d.total",
                records: "d.records",
                id: "d.names"
            },
            colModel: [
                     { name: 'select', label: 'select' },                        
                     { name: 'code', label: 'Branch Code' },
                     { name: 'name', label: 'Branch Name' },
                     { name: 'status', label: 'Branch Status'}

                ],


            rowNum: 10,
            rowList: [10, 20, 300],
            sortname: 'name',
            sortorder: "asc",
            pager: "#pager",
            viewrecords: true,
            gridview: true,
            rownumbers: true,
            height: 250,
            autowidth: true,
            caption: 'Branch List',              

        }).jqGrid('navGrid', '#pager', { edit: false, add: false, del: false, search: true });
Suave Nti
  • 3,721
  • 11
  • 54
  • 78
  • Hi dark i think you have mistaken my question. Actuallly my question is like this my grid layout is generated , pagination and total number of pages are generated correctly in the grid layout. But no value is loaded in the grid. – user359187 Feb 11 '12 at 10:42
  • I am using latest jqgrid. It is jqGrid4.0 – user359187 Feb 11 '12 at 11:01
  • Thanks dark it is working lot of thaks to you. One more small thing that i want to ask is, is there any way to update the the result field within this jqgrid function. I want if a fiels value is true i want to print it as "yes" otherwise "no". Is there any option for this. – user359187 Feb 11 '12 at 11:32
  • Glad it worked it for you. I usually do that from my backend code to set a feild value yes or no based on true or false a simpler approach. But I never tried doing it onload of jqgrid. – Suave Nti Feb 11 '12 at 11:35
  • Yes i will try to change it from the backend. Again thanks Dark. – user359187 Feb 11 '12 at 19:23
  • I got this also. We can write the custom formatter checkout this link http://stackoverflow.com/questions/7294434/jqgrid-link-display-text – user359187 Feb 13 '12 at 06:36