将动态数据添加到Html表?使用Jquery?

时间:2015-02-23 08:15:18

标签: jquery asp.net

我正在使用,j查询将数据绑定到html表它工作正常,但问题是,在html表中显示了一个带有项目名称和类名的额外列。我怎么能避免这种情况,帮助我,我正在下载我的代码:

[WebMethod]
    public static List<Mystate> GetCountryList()
    {
        List<Mystate> state = new List<Mystate>();

        SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["xxxx"].ToString());
        SqlDataAdapter da = new SqlDataAdapter("sp_get_data", con);
        DataSet ds = new DataSet(); da.Fill(ds);


        foreach (DataRow dr in ds.Tables[1].Rows)
        {
            state.Add(new Mystate { Districtid = Convert.ToInt32(dr["distid"]), Stateid = Convert.ToInt32(dr["stateid"]), Distrinctname = dr["districtname"] .ToString ()});
        }


        return state;
    }

Javascript代码:

    $(document).ready(function () {

        $('#btnin').click(function () {

            $.ajax({

                url: "TableJquery.aspx/GetCountryList",
                data: "",
                dataType: "json",
                type: "POST",
                contentType: "application/json; charset=utf-8",
                success: OnSuccess,
                error: OnError
            });

        });//button click

    });//Ready

    function OnSuccess(data) {            

        $('#Div2').html(BuildTable(data));             

    }

    function BuildTable(data) {

        var d = data.d;

        var headers = [];
        var rows = [];

        //column                       

        headers.push("<tr style='background-color:brown;'>");
        for (var column in d[0]) {               
                headers.push("<td ><b>" + column + "</b></td>");                  
        }
        headers.push("</tr>");


        // Rows

            for (var row in d) {
                rows.push("<tr>");
               // rows.push("<td><input type='button'   value='+' /></td>");
                for (var column in d[row]) {
                    if (d[row][column] != 'Divcenterformasterpage.Mystate') {
                        rows.push("<td>");
                        rows.push(d[row][column]);
                        rows.push("</td>");
                    }
                }
                rows.push("</tr>");
            }

            var top = "<table border='1' style='background-color:;' >";
            var bottom = "</table>";
            return top + headers.join("") + rows.join("") + bottom;


    }

我的桌子附带了额外的栏目&#34; Divcenterformasterpage.Mystate&#34;,这是我的项目名称和&#34; Mystate&#34;是calss。请帮帮我

1 个答案:

答案 0 :(得分:0)

for (var row in d)循环切换为for (var i= 0;i< d.count;i++)。 它会正常工作。