I've found that in theory ko.cleanNode()
should remove bindings from node if called, but in this example it doesn't seem to work.
Javascript:
// View model
var vm = {
name: ko.observable("John")
}
// Node to be added
var node = $("<div/>",{
id: "testing",
'data-bind' : "text: name()"
});
// First addition to body
$("body").append(node);
// Apply bindings
ko.applyBindings(vm,$("#testing")[0]);
// Remove
ko.cleanNode($("#testing")[0]);
$("#testing").remove();
$("body").append(node);
Result: You can see in jsFiddle , that node still has attached binding (event listener).