2012-06-18 124 views
1

我有麻烦呈现出一个模板字段,我的数据是这样的:JSRender留下空白

var data = {"addresses": 
       [{"Title":null, 
        "Name":null, 
        "Address1":"Add 1.1", 
        "Address2":"Add = 2.1", 
        "Town":"Town1", 
        "County":"County 1", 
        "Country":"United Kingdom", 
        "Postcode":"CV10 1RH", 
        "CountryId":229}, 
       {"Title":null, 
        "Name":null, 
        "Address1":"Add 1.2", 
        "Address2":"Add = 2.2", 
        "Town":"Town2", 
        "County":"Count 2", 
        "Country":"United Kingdom", 
        "Postcode":"CV10 2RH", 
        "CountryId":229} 
       ]}; 

我的模板存储在javascript和呈现:

var defaultAdressSelectorTemplate = '<label for="addressSelector">Select Adress:</label><select id="addressSelector" name="addressSelector">{{#each addresses}}<option>{{>Address1}}</option>{{#/each}}</select>';   

$.templates({ addressTemplate: defaultAdressSelectorTemplate }); 

html = $.render.addressTemplate(data); 

我遇到的问题是{{>Address1}}总是呈现空白。我究竟做错了什么?

回答

1

使用要使用{{for}}

var defaultAdressSelectorTemplate = '<label for="addressSelector">Select Adress:</label><select id="addressSelector" name="addressSelector">{{for addresses}}<option>{{>Address1}}</option>{{/for}}</select>'; 

jsfiddle example

0

尝试使用jQuery.parseJSON()方法之前呈现模板

var renderedTemplate = $("#templateId").render($.parseJSON(data)); 
$("#dataGridId").html(renderedTemplate); 
最新JSRender