正在使用knockout.js,请问如何bind才能产生这样的输出:
<figure> <img src="a.jpg" /> <img src="b.jpg" /> <img src="c.jpg" /> ...... ....... <figcaption>Image title</figcaption> </figure>
顶顶
可以用foreach
你传到前台的需要这样的数据:
var Viewmodel=function(){ var self = this; self.Imgs = ko.observableArray(); //Imgs 的数据是Imgs=[{"src":"a.jpg"},{"src":"b.jpg"},{"src":"c.jpg"}] self.ImgTitle = ko.observable();//ImgTitle } html: <figure id="img" data-bind="foreach:Imgs"> <img data-bind="attr:{src:src}"/> //Title 不在循环里面只能另外添加 </figure> js: var title= "<figcaption>"+Viewmodel.ImgTitle+"</figcaption>" $('#img').append(title);
html:
<figure>
<!-- ko foreach: datasources -->
<img data-bind="attr:{src:src}"/>
<!-- /ko -->
<figcaption>Image title</figcaption>
</figure>
多谢