www.webdeveloper.com
Results 1 to 6 of 6

Thread: Why can't I call top.opener.submit()?

  1. #1
    Join Date
    Mar 2003
    Location
    NJ
    Posts
    126

    Why can't I call top.opener.submit()?

    Based on the answer to my previous post (this one: http://forums.webdeveloper.com/showt...&threadid=7788), I should be able to call top.opener.submit(); from a child window. However, nothing happens.

    The first window calls window.open(URL, "AddToCart");

    The new window (AddToCart), has a button which calls top.opener.submit();

    It appears that there is no submit() function on top.opener.

    In window AddToCart, I can say alert(top) and get a window saying [object]. I can say alert(top.opener) and [object] pops up. But when I say alert(top.opener.submit()), nothing happens. Where is the submit() function?

    Thanks in advance.
    Jeff

  2. #2
    Join Date
    Jul 2003
    Location
    Boston Area, Massachusetts
    Posts
    3,489
    The submit method is not a method of window, rather, a method of HTMLFormElement. Therefore, you'll have to get a reference to the form in the opener window and then call its submit method.
    Code:
    opener.document.forms['foo'].submit();
    Last edited by fredmv; 04-01-2004 at 04:15 PM.

  3. #3
    Join Date
    Mar 2003
    Location
    NJ
    Posts
    126
    Thanks. I was starting to feel like it was something like that.

    My boss just sent me off in another direction, so I'll have to check it out later.

  4. #4
    Join Date
    Mar 2003
    Location
    NJ
    Posts
    126
    Can't quite get it working.

    I can't get a handle to the form that's in top.opener.

    In other words (to continue the way I was explaining it before), if I say alert(top.opener), I get [object]. But if I execute alert(top.opener.forms), I get nothing. Likewise, I get nothing if I try alert(top.opener.forms[0]) or alert(top.opener.forms['_HandleDispThumbForm'] (where "_HandleDispThumbForm" is the unwieldy name of the form I'm trying to submit.

    How do I figure out what object, and what type of object, I have a handle to? In other words, I want to print more than just [object] when I execute alert(top.opener). I can get all of the properties (forall prps in top.opener), but they don't tell me anything of value either -- except that there is no forms property.

    Any more help submitting the form is appreciated.

    Also note that this is a frameless application.

    Regards,
    Jeff

  5. #5
    Join Date
    Jul 2003
    Location
    Boston Area, Massachusetts
    Posts
    3,489
    Oops. Wrote my previous reply way too fast. I've fixed the sample code offered — I omitted the document object by mistake. Very sorry about that.

  6. #6
    Join Date
    Mar 2003
    Location
    NJ
    Posts
    126
    >Wrote my previous reply way too fast.

    That's OK, apparently so did I. I posted just before leaving for the day and based on your original post overnight I realized how to get to the answer.

    So it's working now. Thanks for your help.
    -Jeff
    Last edited by JSchwarz; 04-02-2004 at 09:00 AM.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles