Firefox does not reflect dynamic DOM changes in the innerHTML property of a given DOM element.
This means that if you set the value of a text box to “123”, then call the innerHTML property of the DOM element that contains the text box, the value of the text box according to innerHTML will appear to be whatever it was prior to your alteration. In practice, when the page posts back to the server, the value will actually be “123” and not what innerHTML reports, but the fact that Firefox ignores the change gives me yet one more gray hair.
To get around this glaring oversight, I had to use the setAttribute() method on the DOM input element:
This accomplishes both tasks — updating the actual input value and changing the innerHTML property accordingly.
You’ve won this round IE… you’ve won this round.