Affects: IE9 PP4, IE9 Beta, IE9 Platform Preview 6
We're happy to say that IE9 has brought many, many improvements to Internet Explorer in terms of updating the IE engine to properly handle standards based code.
IE had issues in the past with the Element.setAttribute(name, value); method for a long time not supporting it on a wide array of elements (bug 242) of which the type attribute was a significant one (bug 237).
We were hoping that after IE9 Platform Preview 4 was released and we found that the .setAttribute('type', value); method had finally been fixed that the "new" bug with the value being erased when switching an HTMLInputElement from type "password" to "text" would have been fixed 2 public releases later.
Unfortunately it is still broken and thus we're tracking this new issue separately here.
<input type="password" id="accessCode" name="accessCode" value="bfg10k"/>
var field = document.getElementById('accessCode');
//Oopsie! the value is now gone in IE9!
Known Workarounds: None.
Related Issues: None.