Praveen S
Praveen S

Reputation: 650

Bind Database data to Gridview using Jquery

I am using Jquery to bind data into Gridview,On Checkbox Select Change i get data from Database and when i try pass those data to Jquery to bind on Gridview Shows Error.

Jquery
 <script type="text/javascript">
     $(document).on('click', 'input', function () {
         var key = $(this).find('lb' + this.id).text();
         var val = 'lb' + this.id;
         var lbltext = document.getElementById(val).innerHTML;
         $.ajax({
             type: "POST",
             url: "CandidateManagement.aspx/BindDatatable",

             data: '{value: "' + lbltext + '" }',
             contentType: "application/json; charset=utf-8",
             dataType: "json",
             success: function (details) {
                 alert(response.d.length);
                 for (var i = 0; i < response.d.length; i++) {

                     $("#gvUserManage").append("<tr><td>" + response.d[i].CandidateID + "</td><td>" + response.d[i].CandidateName + "</td><td>" + data.d[i].CurPosition + "</td></tr>" + "<tr><td>" + response.d[i].TotWorkExp + "</td><td>" + response.d[i].Skillset + "</td><td>" + data.d[i].USStatus + "</td></tr>" + "</td><td>" + data.d[i].Location + "</td></tr>" + "</td><td>" + data.d[i].ActiveResume + "</td></tr>");
                 }
             },
             error: function (result) {
                 alert("Error");
             }
         });
</script>

aspx.cs

[WebMethod]
    public static Admin_CandidateManagement[] BindDatatable(string value)
    {
        string year = value.Substring(0, 2);
        int yearvalue = int.Parse(year);
        Admin_CandidateManagement admincandi = new Admin_CandidateManagement();
        string strSrcQry = admincandi.getSrcQryExpr(yearvalue);


        DataTable dt = new DataTable();
        Recruitment recOBJ = new Recruitment();
        admincandi.recOBJ.GetAllCandiDeatForAdvaceSearch(ref admincandi.dsCandiDeat, strSrcQry);
        //recOBJ.BindData(strSrcQry);
        dt = admincandi.dsCandiDeat.Tables[0];

        List<Admin_CandidateManagement> details = new List<Admin_CandidateManagement>();
        foreach (DataRow dtrow in dt.Rows)
        {
            Admin_CandidateManagement user = new Admin_CandidateManagement();
            user.CandidateID = dtrow["CandidateId"].ToString();
            user.CandidateName = dtrow["CandiName"].ToString();
            user.CurPosition = dtrow["CurrPosi"].ToString();
            user.TotWorkExp = dtrow["TotWrkExp"].ToString();
            user.Skillset = dtrow["SkillSet"].ToString();
            user.USStatus = dtrow["USStatus"].ToString();
            user.Location = dtrow["Location"].ToString() + "   " + dtrow["JobZipCode"].ToString();
            user.ActiveResume = dtrow["ActiveResume"].ToString();
            details.Add(user);
        }
      return details.ToArray();

    }

Upvotes: 1

Views: 7875

Answers (1)

user2021740
user2021740

Reputation: 174

In your jquery where is 'response' you have to write response instead of details in success function

success: function (response) {
             alert(response.d.length);
             for (var i = 0; i < response.d.length; i++) {

          $("#gvUserManage").append("<tr><td>" + response.d[i].CandidateID + "</td>   <td>" + response.d[i].CandidateName + "</td><td>" + .d[i].CurPosition + "</td></tr>" + "<tr><td>" + response.d[i].TotWorkExp + "</td><td>" + response.d[i].Skillset + "</td><td>" + response.d[i].USStatus + "</td></tr>" + "</td><td>" + response.d[i].Location + "</td></tr>" + "</td><td>" + response.d[i].ActiveResume + "</td></tr>");
             }
         },

Upvotes: 1

Related Questions