您好我使用Mustache JS使用JSON获取数据。我的模板如下。
<script id="patientTabl" type="text/template">
<table class="bordered">
<thead>
<tr>
<th>First Name</th>
<th>Last Name</th>
<th>Phone Number</th>
<th>Patient Id</th>
<th>SSN</th>
</tr>
</thead>
<tbody>
{{#patients}}
<tr>
<td data-title="First Name">{{firstName}}<div href="#" class="tool-tip">
<span class="right-arrow">
<img class="callout" src="images/callout.gif" />
<ul>
<li><a href="update-patient.html?id={{id}}">View/Update Patient</a></li>
<li><a href="JavaScript:getInsurPlans()" id="viewInsurPlans">View Insurance Plans</a></li>
<li><a href="patient-admission.html?id={{id}}">Create Patient Admission</a></li>
</ul>
</span>
</td>
<td data-title="Last Name">{{lastName}}</td>
<td data-title="Phone Number"> {{phones}}</td>
<td data-title="Patient Id">{{id}}</td>
<td data-title="SSN">{{ssn}}</td>
</tr>
{{/patients}}
</tbody>
</table>
</script>
为此我在jquery代码下面编写以将数据提取到模板中。我得到了响应,但数据没有插入到模板中。请帮忙
$.getJSON('/ePhase-web/patients', function (data) {
var template = $('#patientTabl').html();
var html = Mustache.to_html(template, data);
$('#sampleArea').html(html);
});
答案 0 :(得分:0)
很难说究竟出了什么问题。我没有看到任何明显的错误。因此,通用调试是有序的。
大多数浏览器都有某种网络标签。它是否显示正在提出的请求?请求成功了吗?只有在请求成功时才会调用您的方法。
如果请求成功,您可以调试代码本身。打开开发控制台后,您可以放置调试器这个词,如果执行暂停,那么您可以检查变量的值(通过鼠标悬停在它们上面)
对于PatientTab的jquery选择是否给出了正确的元素?
&#34;数据&#34;看起来像?调用mustache.to_html时是否抛出错误? html是什么样的?
$(&#34; #sampleArea&#34;)是否找到任何元素?
我认为逐一回答这些问题会指出你要修复错误或提出更可解决的答案。另请参阅this article on debugging in chrome