I want a jQuery driven editor that can create the form HTML on the fly, and then generically save it all into a database field. I can handle all the jQuery, but I'm just looking for a structural DB design on how to make a quick, simple, generic form editor. Is saving all the HTML of the form a good idea?
Background information:
We need a checklist tool and I am building a simple elegant one for our office. The idea is I want a quick tool for us to keep track of our work and follow a process, but not a bloated TPS report type system
Here's the requirement: an editor that lets you create a new checklist. A checklist is just a collection of divs "entries" with a single checkbox, and a bit of text to ask if you've completed this item. The editor will allow you to create a new entry and modify the space at the bottom to add additional fields, for now I am thinking a textarea. The tool will save your checklist template then you can go fill out completed lists.
So for example, i create a "go-live" checklist and then when I make a site live, fill out an instance of my "go-live" check-list for reference later. There will be 2 kinds of these instantiated lists, "open" and "closed"
A tricky part is now I want to go back and modify my go-live list without breaking my ability to view old closed ones. So I am thinking that if the list has changed, I version my go-live templates to keep track of it. Also the editor will allow you to re-order checkbox items, I'm liking the idea of auto-numbering them.
This background is all unnecessary as here is how I want it to work. I want a jQuery driven editor that can create the form HTML on the fly, and then generically save it all into a database field. I want to avoid hard-coding. So when I fill out a list, I grab the HTML from the DB for that list and bam! have the shell of it, and then I need to save the completed list with filled inputs. I want this process as generic as possible so I can extent the editor to allow more than text areas for each item, maybe add radio buttons, or dropdowns. I was also toying with the idea of allowing lists to have sub-lists (indented under one entry) with a recursive design.