Click here to Skip to main content
15,889,808 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
My script is
XML
<script>
     $(document).ready(function(){
         debugger;
         $.ajax({
             type: "POST",
             contentType: "application/json; charset=utf-8",
             url: "WebForm2.aspx/Grid",
             data: "{}",
             dataType: "json",
             success: function (data) {
                 debugger;
                 var objdata = $.parseJSON(data.d);
                 for (var i = 0; i < objdata.d.length; i++) {
                     $("#jqxgrid").append("<tr><td>" + objdata.d[i].Name + "</td><td>" + objdata.d[i].Email + "</td><td>" + objdata.d[i].Address + "</td></tr>" + objdata.d[i].Contact + "</td></tr>");
                 }
             },
             error: function (result) {
                 alert("error");
             }
         });

     });



 </script>

<div id="jqxgrid" runat="server">

And my code behind page is

C#
public string Grid()
   {
       dtFormsDataset = new DataSet();
       dtFormsData = new DataTable();
       dtFormsData.Columns.Add("Name");
       dtFormsData.Columns.Add("Email");
       dtFormsData.Columns.Add("Address");
       dtFormsData.Columns.Add("Contact");
       dtFormsData.Rows.Add("Usha", "Usha@Kp.com", "Chennai", "Kp@guntakal");
       dtFormsData.Rows.Add("Chaitu", "ChaituKp@gmail.com", "Chennai", "ChaituKurava@gmail.com");
       dtFormsData.Rows.Add("UshaSanjee", "Ushasanjee@gmail.com", "Hyderabad", "Hyderabad");
       dtFormsData.Rows.Add("ChaituKP", "chaitu@gmail.com", "Chennai", "Cheenai");
       dtFormsDataset.Tables.Add(dtFormsData);
       string result = DataSetToJSON(dtFormsDataset);
      return result;
   }

C#
public string DataSetToJSON(DataSet ds)
      {

          Dictionary<string, object> dict = new Dictionary<string, object>();
          foreach (DataTable dt in ds.Tables)
          {
              object[] arr = new object[dt.Rows.Count + 1];

              for (int i = 0; i <= dt.Rows.Count - 1; i++)
              {
                  arr[i] = dt.Rows[i].ItemArray;
              }

              dict.Add(dt.TableName, arr);
          }

          JavaScriptSerializer json = new JavaScriptSerializer();
          return json.Serialize(dict);
      }



But I'm getting nothing just showing the alert error message.in code behind im getting the json result but why im not able to bind that data to jqxgrid.

I also tried by using source,dataAdapter and calling that source to jqxgrid.But no use there im getting null exception in jqxgrid.js script by JQXWidgets.

Can any one plz help me.As I'm new to javascript
Posted
Comments
Nivedita_Parihar 6-Jun-14 2:26am    
Have you verified the 'result ' value?
Sampath Lokuge 6-Jun-14 2:45am    
Have you checked with the dev tools to find whether is there any exceptions on js code ?

I have never came across jqxGrid, but i find something that can help you. I hope so.

Grid Data Sources-jqxGrid[^]

Regards..
 
Share this answer
 
for that you have to declare [WebMethod] with static method like this

C#
[WebMethod]
        public static string Grid()
        {
        }

public static string DataSetToJSON(DataSet ds)
    {

    }



for more details see my tip & tricks.. :)

Bind Gridview using AJAX [^]

Expandable Table like Gridview[^]
 
Share this answer
 
Make grid as web method.
[WebMethod(EnableSession = false)]
 
Share this answer
 
Comments
Usha Sanjee 6-Jun-14 3:59am    
I'm getting the Json data but on browser it is showing me a window (Loading.....)
my html page is
<script>
$(document).ready(function(){
var datas = $.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "WebForm2.aspx/Grid",
data: "{}",
dataType: "json",
global: false,
async: false,
success: function (data) {

var data = $.parseJSON(data.d);
},
error: function (result) {
alert("error");
}

}).responseText;

alert(datas);
var dataAdapter = new $.jqx.dataAdapter(datas);
$("#jqxgrid").jqxGrid(
{
width: 670,
source:dataAdapter ,
//theme: theme,
theme:'classic',
columnsresize: true,
columns: [
{ text: 'Name', dataField: 'Name', width: 250 },
{ text: 'Email', dataField: 'Email', width: 150 },
{ text: 'Address', dataField: 'Address', width: 180 },
{ text: 'Contact', dataField: 'Contact', width: 80 }
]
//columns: columns
});

});
</script>

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900