Javascript 敲除JS数组空或can';无法检索值?

Javascript 敲除JS数组空或can';无法检索值?,javascript,jquery,knockout.js,Javascript,Jquery,Knockout.js,我有一个Javascript ajax函数,可以从服务器检索注释(注意:我不熟悉Knockout JS): 通过该警报,我可以看到该值确实设置在那里,在我的JS文件的开头,我有以下代码: var comments = new Comments(); ko.applyBindings(comments); comments.getNewerComments(0); 在html文件中: <!-- ko foreach: commentArray --> <li>Item &

我有一个Javascript ajax函数,可以从服务器检索注释(注意:我不熟悉Knockout JS):

通过该警报,我可以看到该值确实设置在那里,在我的JS文件的开头,我有以下代码:

var comments = new Comments();
ko.applyBindings(comments);
comments.getNewerComments(0);
在html文件中:

<!-- ko foreach: commentArray -->
<li>Item <span data-bind="text: $index"></span></li>
<!-- /ko -->
</div>

  • 项目
  • 但是,html文档中没有显示任何内容,甚至“Item”文本也没有显示,这表示数组的长度为0。 这里有什么问题?为什么不能使用数组值?


    谢谢。

    您应该使用现有的可观察数组(已绑定),而不是创建新数组:

    .done(function(data) {
       self.commentArray(data);
       alert(self.commentArray[0].authorName);
     })
    

    你设置了两次可观测阵列。在开始时,以及在Ajax调用时。一旦构建了模型并应用了绑定,就不需要再处理可观察对象了。完成了。将处理对绑定到模型的数据对象所做的任何更改

    哦,nvm误读了,这是我不能做的投票,直到我有15个代表标记为答案。
    .done(function(data) {
       self.commentArray(data);
       alert(self.commentArray[0].authorName);
     })