The use of hidden fields to hold the "original value" of a field is bad
practice. If the field is modified in the mean time (through a
different window, for instance) then the forms will not be fully saved.
You don't get much from this kind of optimization. Just resave the
whole thing.