2012-04-09 56 views
0

我試圖提出一個JSON集合,這是異步檢索和使用Firebug我可以看到這個最終的樣子:髭模板 - 呈現JSON收集

​​

這並不工作,但如果我聲明集合爲:

[{ "Id": "00000004" }, { "Id": "00000005" }, { "Id": "00000006"}] 

這個工作,然後使用Firebug我可以看到這是稍有不同:

[Object { Id="00000004"}, Object { Id="00000005"}, Object { Id="00000006"}] 

爲什麼在同步檢索數據和聲明集合時有所作爲?我的選擇是什麼讓這個工作。

謝謝。

UPDATE

我也使用sammy.js,這裏是JavaScript:

var app = $.sammy('div[role="main"]', function() { 

    this.use('Mustache', 'html'); 

    this.get('#/', function (context) { 
     this.load('/data') 
      .then(function (response) { 

       context.blah = 'blah'; 
       context.data = response; 

       var data2 = [{ "Id": "00000004" }, { "Id": "00000005" }, { "Id": "00000006"}]; 
       context.data2 = data2; 

       var templateUrl = '@Url.Content("~/Templates/template.html")'; 

       context.partial(templateUrl); 
      }); 
    }); 
}); 

$(function() { 
    app.run('#/'); 
}); 

這裏是模板:

<h1>{{blah}}</h1> 
<ul> 
{{#data}} 
<li>{{Id}}</li> 
{{/data}} 
</ul> 
<ul> 
{{#data2}} 
<li>{{Id}}</li> 
{{/data2}} 
</ul> 
+1

請張貼實際的代碼,做並不起作用。 – 2012-04-09 19:22:20

+0

是的。你寫道:*我的選擇是什麼讓它工作?*但不清楚什麼不適合你。 – Cheeso 2012-04-09 19:36:51

+0

好的,請參閱更新。 – youwhut 2012-04-09 19:49:17

回答

0

好吧,我想通了這一個了!

context.data = response; 

成爲

context.data = JSON.parse(response);