Change ng-disabled to ng-readonly, and add use plain text (span) instead of input elements for when the grid is not editable to make the dom and angular bindings much simpler in that case