Knockout. The unobtrusive plugin was my initial attempt to move away from the data-bind
attributes, and back when I created it, adding model anchor elements back to the DOM was the only sensible way I could do this.
As Ryan notes, Knockout 2.0 allows you to create your own binding providers that replace the data-bind
attributes with your preferred strategy. Thus, I am currently updating my plugin to provide one of these providers, which will eliminate any entry in the DOM at runtime. You can check your progress in the ko-v2 branch here . Let me know if you have any comments or suggestions. And be careful, I'm just getting started, so nothing works yet, but I have to have another fixator or two to share the next day or so.
2-28-12 Update
I have added additional tests and functionality to the branch above. The current functionality is basic, but still meets your data binding bypass requirements.
Let me know what you think. This can be allocated to a new project (with Knockout.Unobtrusive disabled)
source share