I'm trying to submit a form with javascript. Firefox works fine but IE complains that "Object doesn't support this property or method" on the submit line of this function:
function submitPGV(formName, action)
{
var gvString = "";
pgVisibilities.each(function(pair) {
gvString += pair.key + ":" + pair.value + ",";
});
$('pgv_input').value = gvString;
var form = $(formName);
form.action = action;
form.submit();
}
Called here:
<a href="javascript:submitPGV('ProductGroupVisibility','config/productgroupvis/save')">
Here's the form:
<form id="ProductGroupVisibility" action="save" method="post">
<input type="hidden" name="ows_gv..PGV" id="pgv_input" value=""/>
</form>
Any ideas?
Try checking the type of the element IE is selecting:
// For getting element with id you must use #
alert( typeof( $( '#ProductGroupVisibility' )));
It is possible there is something else on the page with that ID that IE selects before the form.
What name
does your <input type="submit">
have?
If you called it "submit", you have overridden the form.submit()
function, much the same way an input called "foo" would generate a form.foo
property. That would explain the behavior.
beware of any inputs in the form with name='submit', they break the javascript .submit() functionality!
What javascript framework are you using? If it's jQuery I think you'll need to add # to your id:
$('#ProductGroupVisibility').submit();
Are you sure you have your JavaScript library loaded? (jQuery or Prototype)
It worked for me in IE7 with Prototype.
Try:
alert($('ProductGroupVisibility').id)
See if you get an error.