Well, with as general as your question was; it sounds to me like your problems (and how to solve them) are:
1.) You should never, ever, EVER program JavaScript while playing with a Microsoft browser, unless it's an app you're making for internal use only on a business/personal network where all computers are under your control, and use only Microsoft browsers. Unfortunately, no amount of scolding from the US court system, or either US or international standards organizations will ever convince Microsoft to design a single program that conforms to, and properly implements a standards set (i.e. the JavaScript language standards). Because of that, everything programmed in JavaScript has to have a special self-reprogramming ability to work on a)every other browser, and b) Microsoft garbage.
2.) It sounds to me like you got suckered into using an i.e.-specific (here goes the standards non-compliance again) call to update your innerHTML on your pick list iframe. If you re-write your JavaScript to read the entire form, and rebuild the entire picklist from it after each onChange() event, I think that'll be the most universal solution for your problem (and, coincidentally, if you simply write the function to do this once, then call it from each event, likely the easiest too).
Aside from that, like jpadie said, we'd need much more specific information on your problem in order to offer more case-specific help to you.
I hope this helps;
robherc