2011-04-29 60 views
1

我想获取数据绑定和tmpls - jquery插件能够很好地协同工作。所以我想用一个模板来渲染数据,然后使用数据绑定来将它钩回到我的对象中。例如:JQuery Tmpl和Databinding一起工作

var items = [{ Name: 'Barak Obama', Phone: '555-1212' }, 
      { Name: 'George Bush', Phone: '444-2222'}]; 

function addItems() { 
    $("MyList").html(""); 
    for (var index in items) { 
     $("#ListTmpl").tmpl(items[index]).link(items[index]).appendTo("#MyList"); 
    } 
}; 

随着模板是这样的:

<script id="ListTmpl" type="text/x-jquery-tmpl"> 
    <li> 
     <input id="Name" value="${Name}" /> 
     <input id="Phone" value="${Phone}" /> 
    </li> 
</script> 

但是,如果我有一个问题是,我想项目包含一个数组,并呈现比{{每个}}

var items = [{ Name: 'Barak Obama', Phone: '555-1212', 
      kids: [{Name: "Malia"}, {Name: "Sasha"}] }, 
      { Name: 'George Bush', Phone: '444-2222'}, 
      kids: [{Name: "Barbara"}, {Name: "Jenna"}] }]; 

和模板是这样的:

<script id="ListTmpl" type="text/x-jquery-tmpl"> 
    <li> 
     <input id="Name" value="${Name}" /> 
     <input id="Phone" value="${Phone}" /> 
     <ul> 
     {{each kids}} 
      <li> ${Name} 
     {{/each}} 
     </ul> 

但是,如何获取链接回原始对象的孩子姓名数据?

回答

1

你可能想看看knockout.js
它确实使用jQuery模板和它自己的绑定机制。