参考下面的小提琴: enter link description here
<div id="test">
<li>gokul</li>
</div>
<script id="someTemplate" type="text/html">
<li data-bind="text: name"></li>
</script>
var data = [ { name: "one" }, { name: "two" } ];
var element = document.getElementById("test");
var startForEach = document.createComment("ko template: {name: 'someTemplate', foreach: $data }");
var endForEach = document.createComment("/ko");
element.appendChild(startForEach);
element.appendChild(endForEach);
ko.applyBindings(data, document.getElementById("test"));
现在到列表项,我需要添加一个基于一些javascript逻辑的类。例如,我们有elementArray1 = [100,200,300],elementArray2 = [500,800,800] ElementSearch =一些随机数如果这个随机数在这两个elementArray的任何一个中,我们需要在列表中添加“激活”类项目
答案 0 :(得分:0)
<div id="20" data-pid="400">
<div id="test">
<li>gokul</li>
</div></div>
<script id="someTemplate" type="text/html">
<li data-bind="text: name"></li>
</script>
var data = [ { name: "one" }, { name: "two" } ];
data.myPostProcessingLogic = function (element) {
val=$(element).parent().parent().attr('data-pid');
if(val==400){
$(element).addClass('hello');
console.log($(element));
}
};
var element = document.getElementById("test");
var startForEach = document.createComment("ko template: {name: 'someTemplate', foreach: $data, afterRender: myPostProcessingLogic }");
var endForEach = document.createComment("/ko");
element.appendChild(startForEach);
element.appendChild(endForEach);
ko.applyBindings(data, document.getElementById("test"));