knockout is great library that’s easy to use. One thing I noticed is that changes made in text-controls are only propagated to the observable once that control loses focus.
If you want changes in a text-control to immediately be reflected in your observable, then avoid the value binding and use the textInput binding like below:
<input data-bind="textInput: Name" type="text" value="" />
<script type="text/javascript">
$(document).ready(function () {
viewModel = ViewModel()
ko.applyBindings(viewModel);
});
function ViewModel() {
var self = this;
self.Name = ko.observable("");
}
</script>