Fix crash when setting input.type= in oldIE

Old versions of IE don't allow you to set `.type = ` on an `input` element. You can't do it by other means (jQuery's `attr()`, or js `setAttribute()`) either.

So thee input is now hidden via css (`visilibility: hidden; position: absolute;`) in cases where it can't have its type changed. I didn't use `display:none;` as this would prevent the input value from being posted.