0

在我的HTML我有:下划线的模板不工作

<input type="button" id="button" value="Click Me!!"></input> 

<script type="text/template" id="users-template"> 
<% _.each(users, function(user){ %> 
    <b><%= user.name %></b> <br /> 
    <%= user.city %> <br /> 
    <%= user.education %> <br /> 
<%});%> 
</script> 

的getJSON代码:

$("#button").click(function(){ 
    var usertemplate = _.template($("#users-template").html()); 

    $.getJSON("underscoredata.php", function(data){ 

     var resultinghtml = usertemplate({users: data.users}); 

    }); 

}); 

</script> 

从underscoredata.php我json_encode的数据。最后的数据是:

{"users":[{"name":"Daniel","city":"Pune","education":"engineer"},{"name":"Joseph","city":"Bangalore","education":"Doctor"},{"name":"Radhika","city":"Delhi","education":"Actor"}]} 

但我没有看到任何东西在页面中。我如何显示页面上的用户信息>我已经包含了jquery和下划线路径。

谢谢。

回答

2

您需要添加到产生的DOM中的HTML,创建一个目标元素:

<div id="target"></div> 

并追加resultinghtml

... 
var resultinghtml = usertemplate({users: data.users}); 
$('#target').html(resultinghtml); 
... 
+0

不工作... – Somename

+1

@Somename:你有一个' #target'元素?你究竟如何在页面上填充模板?只需填写模板不会做任何有用的事情,您必须将结果文本放在某处。 –

+0

谢谢@ muistooshort ..它与Alferdo的建议合作:) – Somename