我在jquery中使用jtemplates,当我尝试在模板中使用表时会出错。
以下是起作用
<ul>
{#foreach $T as record}
<li>{$T.record.FirstName}</li>
{#/for}
</ul>但是以下内容不起作用,并给出了错误:$T.record是在firebug中未定义的
<table border="1">
{#foreach $T as record}
<tr>
<td>{$T.record.FirstName}</td>
</tr>
{#/for}
</table>下面是如何使用一些数据调用模板
$(document).ready(function() {
var data = [
{ ID: 1, FirstName: 'Anne', Email: 'anne@domain.com' },
{ ID: 2, FirstName: 'Amelie', Email: 'amelie@domain.com' },
{ ID: 3, FirstName: 'Polly', Email: 'polly@domain.com' },
{ ID: 4, FirstName: 'Alice', Email: 'alice@domain.com' },
{ ID: 5, FirstName: 'Martha', Email: 'martha@domain.com' }
];
$("#jTemplateDemo").setTemplate($("#templateHolder").html());
$("#jTemplateDemo").processTemplate(data);
});解决这一问题的任何帮助都是非常感谢的。
发布于 2010-09-09 03:06:15
我试一试,试试:
{#template MAIN}
<table border="1">
<tr>
<th>First Name</th>
<th>Email</th>
</tr>
{#foreach $T as record}
{#include ROW root=$T.record}
{#/for}
</table>
{#/template MAIN}
{#template ROW}
<tr>
<td>{$T.FirstName}</td>
<td>{$T.Email}</td>
</tr>
{#/template ROW}如果您仍然有问题,我建议您将模板放在外部html文件中,并按如下方式使用:
$("#jTemplateDemo").setTemplateURL('JTemplates/yourTemplateHere.html');
$("#jTemplateDemo").processTemplate(data);发布于 2010-09-13 04:52:51
这个错误是由于我放置模板本身造成的。当我把模板放在这样的块里
<script id="templateHolder" type="text/html">
<!-- Template itself -->
</script>正确呈现的模板。
https://stackoverflow.com/questions/3673381
复制相似问题