Site Navigation

Showing posts with label 137. Show all posts
Showing posts with label 137. Show all posts

Friday, August 3, 2007

bug 137 - IE AutoComplete hardly ever stores data

Issue: #137
Affects: IE5, IE5.5, IE6, IE7
Description: When a form is submitted, by any method other that an input button of type="submit", the data in the form is NOT stored for future use in AutoComplete.

Example: calling document.forms['foo'].submit(); from JavaScript will not save the form contents for future use.


Known Workarounds: According to this KB article KB:329156, explicitly calling this function, before calling .submit(); will store the data in the AutoComplete history.

Example Workaround Code:
function fixSubmit(formObj){
window.external.AutoCompleteSaveForm(formObj);
formObj.submit();
}



Related Issues: The workaround for this bug, could be directly incorporated into the .submit() method for all forms on a page, by prototyping a .submit() wrapper on the HTMLFormElement object, however due to bug 186, this is not possible.

Microsoft Internet Explorer

Microsoft Internet Explorer (IE):

Developing for the IE browser is quite challenging, due to all the bugs. For example, if your form doesn't get submitted, by clicking on an input element of type="submit", IE won't save the users info for future use with the AutoComplete feature (bug 137). This would be easily solved, if you could use JavaScript to prototype on the HTMLFormElement, but that too (bug 186) is not possible. Other bugs like (bug 153) cause frustration because the code appears to be completely fine, but renders errors/blank pages in IE. Best of all, when developers start using the Browser-Independent DOM Methods, they still lose out! IE doesn't support the .setAttribute() method properly (bug 242) and the .getElementById() method returns incorrect data! (bug 152).

Some bugs are just so strange, like the Magic Mystery HTTP Requests (bug 223), and then there are the bugs discovered when a workaround is discovered for another bug (but we'll let you see if you can find those ones!)