SpServices with JqGrid in in button click event with where condition sharepoint

Hi friends,
Here is code to display spservices getlistitems in jqgrid Sharepoint page load event.
Here is the code. here my list name is ProjectDetails.


<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">
<meta name="WebPartPageExpansion" content="full" />
<meta http-equiv="X-UA-Compatible" content="IE=10" />
<SharePoint:CssRegistration Name="default" runat="server"/>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<style type="text/css" src="https://cdnjs.cloudflare.com/ajax/libs/jqgrid/4.6.0/css/ui.jqgrid.css"></style>
<link rel="stylesheet" type="text/css" href="/Style%20Library/Jqgrid.css"></link>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jqgrid/4.6.0/js/i18n/grid.locale-el.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqgrid/4.6.0/js/jquery.jqGrid.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/json2/20140204/json2.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.SPServices/2014.02/jquery.SPServices-2014.02.min.js"></script>
<script>

</script>
<script>
$(document).ready(function() {
var mydata;
var JqData1=[];
 var counter = 0;
});

</script>

</head>

<body>

<form id="form1" runat="server">
<table>
<tr>
<td><input name="Text1" type="text"  id="txtdata"/></td>
<td><asp:DropDownList runat="server" id="DropDownList1">
<asp:ListItem Text="Approved" Value="Approved" Selected="True"></asp:ListItem>
<asp:ListItem Text="Pending" Value="Pending"></asp:ListItem>
<asp:ListItem Text="All" Value=""></asp:ListItem>
</asp:DropDownList>
</td>
<td><input name="Button1" type="button" value="button" onclick="Button()"/></td>
</tr>
</table>

<div id='tblMain' style="float:left;width:600px">
  <table  id="list" ></table>
  <div id="pager" style="text-align:center;"></div>
</div>

</form>

</body>

<script>
function Button()
{
//alert('hi');
var a=$('#DropDownList1').val();
var b=$('#txtdata').val();
  sortIdexName = jQuery("#list").getGridParam("sortname"); //Maintaining Consitant SortName after the Sortcol event
  sortOrderName = jQuery("#list").getGridParam("sortorder"); //Maintaining Consistant Sort Order
  Query = "<Query> <Where><And><Eq><FieldRef Name='ApprovalStatus' /><Value Type='Text'>"+a+"</Value></Eq> <Eq><FieldRef Name='ProjectName' />"+
            "<Value Type='Text'>"+b+"</Value></Eq></And></Where></Query>";

 var mydata;
var JqData1=[];
 var counter = 0;

  var CAMLViewFields ="<ViewFields>"+" <FieldRef Name='ProjectId' />"+
  "<FieldRef Name='ProjectName' /><FieldRef Name='DeliveryManager' /><FieldRef Name='ApprovalStatus' /></ViewFields>"
  $().SPServices({
      operation : "GetListItems",
      async : false,
      listName : "ProjectDetails",
      CAMLQuery : Query,
      CAMLViewFields : CAMLViewFields,
     completefunc: function (xData, Status) {
    // alert(xData.responseText);
      //var counter = 0;
      $(xData.responseXML).SPFilterNode("z:row").each(function() {
        var JqData={};
    if (counter == 0) {
     JqData.PID= $(this).attr("ows_ID");
     JqData.PName=$(this).attr("ows_ProjectName");
     JqData.PManager=$(this).attr("ows_DeliveryManager");
JqData.PStatus=$(this).attr("ows_ApprovalStatus");
      counter = counter + 1;
    } else {
      JqData.PID= $(this).attr("ows_ID");
      JqData.PName=$(this).attr("ows_ProjectName");
      JqData.PManager=$(this).attr("ows_DeliveryManager");
JqData.PStatus=$(this).attr("ows_ApprovalStatus");

      counter = counter + 1;  
      }
      JqData1.push(JqData);
      });
    }  
    });
    $('#list').jqGrid('GridUnload');
   // $('#list').jqGrid('clearGridData');
    jQuery("#list").jqGrid({
  data: JqData1,
  datatype: "local",
   height: 150,
   width:900,
         hidegrid: false,
  colNames: ['PID', 'PName','PManager','PStatus'],
         colModel: [
             { name: 'PID', index: 'PID', width: 100, align: "center", sorttype: 'int' },
             { name: 'PName', index: 'PName', width: 100, align: "left" },
             { name: 'PManager', index: 'PManager', width: 100, align: "left" },
             { name: 'PStatus', index: 'PStatus', width: 100, align: "left" }
                   ],

  pager: true,
  pager: '#pager',
  pageinput: true,
  rowNum: 2,
  rowList: [5, 10, 20, 50, 100],
  sortname: 'ApprovalStatus',
  sortorder: "asc",
  viewrecords: true,
  autowidth: true,
  emptyrecords: "No records to view",
  loadtext: "Loading..."
});
jQuery("#list").jqGrid('navGrid', "#pager", { edit: false, add: false, del: false, search: true, refresh: true });


}

</script>

</html>

Comments

Popular posts from this blog

WCF interview questions

The term 'Connect-MsolService' is not recognized as the name of a cmdlet, function, script file, or operable program

what is Event Cache table in sharepoint