I needed to submit a form via a standard link. I initially used simple method like this:
<form name="myform"> <input type=text name="domainname"> <a href="javascript:document.myform.submit();">Submit</a> </form>
This works fine, but I also had a few other submit buttons on the same page that performed different actions. So I created a function and included it in the to update a hidden field with the value of my action like so:
function submitForm(id, action){ var myform = document.getElementById(id); myform.innerHTML += "<input type='hidden' name='"+ action +"' value='" + action +"'>"; myform.submit(); return false; }
For some reason that didn't work in Firefox so I revised the code to the following snippet, which creates an input object instead of appending the HTML:
function submitForm(id, action){ var myform = document.getElementById(id); if (document.createElement) { input = document.createElement('input'); input.type = 'hidden'; input.name = action; input.value = action; myform.appendChild(input); } myform.submit(); return false; }
This code doesn't have much validation to it but I have successfully executed this in IE 6 to 8, Firefox, Opera and Chrome.