I got bit hard by this today:
function mk_input( name, val ) {
var inp = document.createElement( 'input' );
inp.name = name;
inp.value = val;
inp.type = 'hidden';
return inp;
}
As it turns out, setting the name
of an element created via createElement
doesn't work in IE. It doesn't cause an error or anything, it just silently fails, causing one to ponder why their hidden fields aren't getting populated correctly.
As far as I can tell, there's no workaround. You have to just bite the bullet and create the <input>
tag through string manipulation and stick it in with .innerHTML
instead.
Is there a better way? Perhaps with something like jQuery? I did a cursory search and didn't find anything exactly akin to createElement
in JQuery, but maybe I missed something.