Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion GroupsGeneralPHPASPPerlColdFusionFlashHTML, CSS, ScriptsBrowsers

Webmaster Forum / HTML, CSS, Scripts / JavaScript / September 2006



Tip: Looking for answers? Try searching our database.

document.getElementById('myForm').submit() does not work

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
antonyliu2002@yahoo.com - 29 Sep 2006 20:18 GMT
Hi,

It looks like so many people are having problems with the javascript
submit in firefox.  I searched around, but haven't found a solution
yet.  Mostly, people were saying, try this or try that or maybe blah
blah or why do you wanna do that blah blah.  I haven't seen a solution
to this problem.

OK, I am trying to share session objects between classic asp
applications and asp.net applications. If you insist in asking why I
wanna do this, because a big chunk of our web application was written a
few years ago in classic ASP, and I am gonna add new components to it
in ASP.NET (I don't wanna write in classic ASP).

So, I searched and found a very good solution to this problem at
http://www.eggheadcafe.com/articles/20021207.asp

That is a great strategy, but the automatic submit by the javascript
(shown below where 't' is the id of the form) in the hidden page works
for IE, but not for firefox.

<script>t.submit();</script>

Please note that this is intended to *automatically* submit, in other
words, there are no button clicks.

I tried instead

document.getElementById(t).submit(); and
document.getElementById('t').submit(); and
(document.getElementById('t')).submit();

None of these worked for firefox.

I believe many out there are having the same problem.  Any solution
yet?  Thanks.
VK - 29 Sep 2006 21:48 GMT
> That is a great strategy, but the automatic submit by the javascript
> (shown below where 't' is the id of the form) in the hidden page works
> for IE, but not for firefox.

Check for two of the most common mistakes:

1) You form has *name* "t" and not id "t" - then naturally
getElementById is out of business here.

2) Your submit button in the form is called "submit":
<input type="submit" name="submit"...> Some badly written authoring
tools still do it by default and it nukes dot-based method accessor for
form submit.

3) The autoreferencing of ID'ed elements in the global scope is IE's
invention. Firefox alas does it too but in quirk mode. Use DOM 0 form
access methods, they are still the best (and no global scope
pollution):
<form name="t" action="...">

and then

document.forms['t'].submit()

or (if in another frame):

parent.frames['frameName'].document.forms['t'].submit()

If the problem persists it may be needed to see the relevant fragment
of your page (or a link).
antonyliu2002@yahoo.com - 30 Sep 2006 03:07 GMT
> > That is a great strategy, but the automatic submit by the javascript
> > (shown below where 't' is the id of the form) in the hidden page works
[quoted text clipped - 26 lines]
> If the problem persists it may be needed to see the relevant fragment
> of your page (or a link).

Hi, VK, thanks a lot for your hint.  I tried exactly as you instructed.
It still does not work.  This one is really hard.  Not sure why
Firefox does this.
RobG - 30 Sep 2006 04:42 GMT
[,,,]
> Hi, VK, thanks a lot for your hint.  I tried exactly as you instructed.
>  It still does not work.  This one is really hard.  Not sure why
> Firefox does this.

Post an example where Firefox doesn't do "this" and IE does.  Then
you'll get some precise help, rather than guesses.

The following example works in Firefox:

<form name="fred" action="">
<input type="text" value="blah" name="blahInput">
</form>

<a href="#" onclick="document.forms['fred'].submit();">Submit the form
"fred"</a>

Which shows that calling a form's submit method works, therefore the
error is elsewhere.

Signature

Rob

antonyliu2002@yahoo.com - 30 Sep 2006 05:20 GMT
> [,,,]
> > Hi, VK, thanks a lot for your hint.  I tried exactly as you instructed.
[quoted text clipped - 18 lines]
> --
> Rob

Thanks. Rob,

The problem seems to be this:  I need to include

<html><head><title>Test</title></head><body> before <form> and then
</body></html> after </form>

for firefox to work.  Whereas, IE does not care about "incomplete" HTML
page.

I tried this, if I don't make the HTML page complete with those basic
tags, then Firefox won't work for this snippet of code, otherwise, it
works.

A great lesson to learn.
RobG - 30 Sep 2006 12:19 GMT
> > [,,,]
> > > Hi, VK, thanks a lot for your hint.  I tried exactly as you instructed.
[quoted text clipped - 28 lines]
> for firefox to work.  Whereas, IE does not care about "incomplete" HTML
> page.

There must be more to this than you've posted - head, body and HTML
tags are all optional.  The code that I posted works in Firefox even it
that's all that's in the page.  Add a doctype and title element  and
it's valid HTML.

Signature

Rob

 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2009 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.