2014-02-19 111 views
0

我使用的是空两分的foreach:Mulitiple的foreach绑定knockoutjs

 <div class="sgMail" data-bind="foreach : mails">...</div> 

     <div class="sgMail" data-bind="foreach : archived">..</div>  

这儿如果我在收件箱中单击,的foreach:邮件应执行和归档等的foreach shouldnot执行。

如何做到这一点?请帮助

回答

1

直接回答你的问题,你可以使用一个标志,以确定哪些显示:

<!-- ko if: showingArchived --> 
<div class="sgMail" data-bind="foreach : mails">...</div> 
<!-- /ko --> 

<!-- ko if: !showingArchived() --> 
<div class="sgMail" data-bind="foreach : archived">..</div> 
<!-- /ko --> 

你可能要考虑使用一个阵列,并在适当的时候对其进行筛选。敲除的绑定会自动更新界面。此外,您可以使用一个foreach并在其中的元素中应用if绑定。

+0

showsArchived应该是可观察值的权利? – Mahahari

+0

是的,我会让它可观察的。 – woz

相关问题