这是我的HTML代码:
<div class="crs-wt-dropbox crs-wt-dropbox-row" data-bind="foreach :rowCols">
<span class="crs-wt-drop-item" data-bind="text: text"> <a class="close-ico" href="#" > </a></span>
</div>
其中foreach :rowCols
rowCols将动态更新:
因此,在向rowCols
添加几个值后,它生成了以下代码
<div class="crs-wt-dropbox crs-wt-dropbox-row" data-bind="foreach :rowCols">
<span class="crs-wt-drop-item" data-bind="text: text">Account</span>
<span class="crs-wt-drop-item" data-bind="text: text">Account number</span>
</div>
但我想知道为什么它没有生成任何锚标记?
答案 0 :(得分:1)
您的data-bind =“text:text”绑定取代了span的内部内容。所以你得到“帐户”文本而不是锚标记。
如果我理解你的要求,要克服这种行为,你应该将“text”绑定移动到锚元素中:
<span class="crs-wt-drop-item"><a class="close-ico" href="#" data-bind="text: text"></a></span>
在我看来,这段代码片段解决了这个任务:
var model = { rowCols: [ { text: 'Item 1'}, { text: 'Item 2'} ] }
ko.applyBindings(model);
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>
<div class="crs-wt-dropbox crs-wt-dropbox-row" data-bind="foreach: rowCols">
<span class="crs-wt-drop-item"><a class="close-ico" href="#" data-bind="text: text"></a></span>
</div>