无法使用数组长度从ajax调用中打印JSON数组

时间:2018-09-26 15:39:49

标签: javascript jquery ajax

这是带有Ajax调用的Javascript,一切正常,我不需要解析JSon,因为它已经被解析并且对象内部有数组。问题是当我尝试使用for循环将数组输出打印到html中时,由于某种原因它无法识别“ data.d.lenght”。我将其更改为Int进行测试,并且所有值都以HTML打印。我什至使用.done,以防javascript运行后Ajax调用完成并且它什么都没有改变。除了从代码隐藏中获取具有数组大小的变量外,我不知道还能做什么,但这是最后的选择。

 <script type="text/javascript">
            function GetColaboradores() {

                var url = "GetColaboradoresWebService.asmx/GetColaboradores";

               $("#UpdatePanel").html("<div style='text-align:center; background-color:yellow; border:1px solid red; padding:3px; width:200px'>Please Wait...</div>");

                var request = $.ajax({
                    type: "POST",
                    url: url,
                    data: "{}",
                    contentType: "application/json; charset-utf-8",
                    dataType: "json"
                });



                request.done(function (data) {

                    var TableContent = "<table border='0'" +
                                            "<tr>" +
                                                "<td> Nome </td>" +
                                            "</tr>";
                    for (var i = 0; i > data.d.lenght; i++) {
                        TableContent += "<tr>" +
                                                "<td>" + data.d[i].Nome + "</td>"
                        "</tr>";
                    }
                    TableContent += "</table>";
                    $("#UpdatePanel").html(TableContent);
                });

                request.fail(function () {

                });
            }        
    </script>

1 个答案:

答案 0 :(得分:0)

谢谢大家,我终于找到了问题所在。不仅长度写错了,而且for循环的条件也写错了。是“ <”而不是““>”。