2012-10-05 104 views
1

我正在使用jQuery Mobile将AJAX发布到服务器。 响应以JSON形式接收,我尝试使用Mustache模板进行显示。 一切正常,但jQuery无法正确呈现,例如它不会将类,样式等添加到呈现的模板中。jQuery mobile,AJAX,Mustache无法正确呈现

加载模板和张贴:

$('#continueToHome').click(function() { // called on button click 
     // call ajax, send no params, receive json 
    $.post("http://localhost:3000/app_login.json", "", function(result){ 
     // load template 
     var template = $('#personTpl').html(); 
     // render data into template 
     var html = Mustache.to_html(template, result); 
     // append to page 
     $('#sampleArea').html(html); 
    }); 
    // display page 
    $.mobile.changePage("#page-homepage", { transition: "slide"}); 
    });` 

的HTML:

<script id="personTpl" type="text/template"> 
     <h1>{{first_name}} {{last_name}}</h1> 
     Email: {{email}} <br> 
     <h3>Smifrs</h3> 
     <ul data-role=listview> 
     {{#usmifrs}}<li><a href=#>{{name}}</a></li> 
     {{/usmifrs}}</ul> 
    </script> 
    <div id="sampleArea"></div> 

问题是,它无法正确显示。 当我有'data-role = listview'的常规'ul'元素时,jQuery为'li'标签注入class ='ui-listview',div和样式,但是当我使用我的模板时,它不会发生。

我想我应该以某种方式重新加载页面,但我找不到如何。

感谢您的帮助。

+0

你能告诉我什么是这个URL'HTTP返回://本地主机:3000/app_login.json'也,你可以更新JSON要传递到小胡子模板qustions – rizwaniqbal

回答