Since that find-as-you-type thing was kind of fun, I decided to implement another little "nice to have" for the client in jQuery. This time it's a simple piece of functionality which obscures form elements and requires an extra explicit step from the user before being able to edit data. The requirement was that users need to confirm what they're doing to avoid accidental edits. Some people were suggesting that we put check-boxes next to elements that the user needs to click to confirm the edit, etc. But I thought of something that seemed a little more elegant.
The idea was simple. For each input element on the form we just want to hide the input and replace it with a text label which shows the data, but isn't an input element. Then we add a button or link that the user needs to click in order to make the form editable.
Given that this was as simple to implement as the find-as-you-type thing, I figured I'd take some extra time and abstract this out into a proper jQuery plugin. It's only needed on one page for now, but it can easily be needed on other pages (and likely will be) in the client's site. So I might as well make it portable.