0

In meinem HTML arbeite ich:Unders Vorlage nicht

<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 Code ist:

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

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

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

    }); 

}); 

</script> 

Von underscoredata.php i die Daten json_encode. Die endgültigen Daten sind:

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

Aber ich sehe nichts auf der Seite. Wie kann ich die Benutzerinformationen auf der Seite anzeigen?> Ich habe die jQuery- und Unterstreichungswege eingefügt.

Danke.

Antwort

2

Sie müssen den HTML-Code in den DOM resultierende, erstellen Sie ein Zielelement:

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

und fügen Sie den resultinghtml

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

Doesnt Arbeit ... – Somename

+1

@Somename: Haben Sie eine ' # Zielelement? Wie genau setzen Sie die ausgefüllte Vorlage auf die Seite? Nur das Ausfüllen der Vorlage macht nichts Sinnvolles, Sie müssen den resultierenden Text irgendwo hinstellen. –

+0

Danke @muistooshort .. Es funktionierte mit Alferdos Vorschlag :) – Somename