Running server side code without submitting current page?

Discussion in 'Javascript' started by javelin, Nov 16, 2006.

  1. javelin

    javelin Guest

    I need to fire off some server side code, but I don't want to submit
    the page I'm on. I know that's not technically possible (without
    something like AJAX, maybe?). What I thought might work is to pop-up
    another window (invisibly?), have it run the code, close itself and
    return the results. What do you think, is it possible???

    Please let me know if you have any ideas.

    javelin, Nov 16, 2006
    1. Advertisements

  2. javelin

    ASM Guest

    javelin a écrit :
    I've a lot :)

    You can play with a backward popup ( <body onload="opener.focus()">)
    You can also play with an invisible iframe.

    But more elegant is to use XMLHttpRequest (part of Ajax)
    ASM, Nov 17, 2006
    1. Advertisements

  3. javelin

    Randy Webb Guest

    ASM said the following on 11/16/2006 8:36 PM:
    No, the most elegant would be the one the FAQ refers to whereby you
    change the .src of an image and the server side script gets fired. Why
    make it harder than it has to be?
    Randy Webb, Nov 17, 2006
  4. javelin

    javelin Guest

    Not sure I follow you. I don't know how to fire off the server side
    script. Can you point me to the FAQ or other refs?
    javelin, Nov 21, 2006
  5. javelin

    Jeremy Guest

    We like to bottom-post in this group, to maintain the conversation
    ordering. I've fixed yours for you (see how I moved your text below

    What Randy means with the image source is that you can use some code
    like this:

    var myScriptCall = new Image();
    myScriptCall.src = "/path/to/my/script";

    Or, in DOM terms:

    var myScriptCall = document.createElement("img");
    myScriptCall.src = "/path/to/my/script";

    //make it invisible but still load = "0px";

    And your script will be requested (and therefore executed).

    However, since one of your requirements seems to be to "return the
    results", you are much better off with XMLHttpRequest - also known
    (often erroneously) as AJAX. It lets you create a javascript object
    which will go off and do a background request to your web server and
    return the result. Which is exactly what you want.

    Do some googling on XMLHttpRequest and see if you can get yourself
    started. It's not as hard as it looks. If you have trouble, come back
    and ask.

    Jeremy, Nov 21, 2006
  6. javelin

    ASM Guest

    Jeremy a écrit :

    I've tried that

    myScriptCall.src = 'script.js'

    file script.js :


    Nothing happens ... no message box :-(

    (no error in FF console)
    ASM, Nov 21, 2006
  7. javelin

    Randy Webb Guest

    ASM said the following on 11/21/2006 5:37 AM:
    The .src of an Image won't execute script. If you want to load script.js
    and have it executed, see this thread (or any other you can find
    searching for my name and "loadJSFile" in it).



    The second one has a link to this page:

    Can you test that page for me if you have any browsers that aren't
    listed on that page? If you have a different OS but the same version
    browser I would appreciate that also as there may be an OS difference in
    the page.

    You should get an alert when the page loads, and then clicking on the
    three buttons at the top you may or may not get an alert (depending on
    whether that method worked or not). OS ver, browser name and version.

    Anybody else reading this that can check that page and test it in any
    browser/OS not listed and let me know it would be appreciated as well.
    Randy Webb, Nov 21, 2006
  8. javelin

    ASM Guest

    Randy Webb a écrit :
    That doesn't answer to my question (I know this way to do)
    I'ld like to do it in JS 1.1 (JS without DOM)
    I've saw several times this page.
    And ... ?
    What have I to do with it ?
    Only right button works : fireFox 2, Safari 1.3.2.
    No button works : iCab beta 3.0.0
    All work : Opera 9.0
    All browsers except NC4.5 show the first alert.
    Mac OS 10.3.9

    NC4.5 doesn't like id="myScriptTag"
    ASM, Nov 21, 2006
  9. In comp.lang.javascript message

    You seem to be rather obtuse today.
    You should read what you quote; if it's worth showing again to others,
    it's worth showing to yourself first.

    When you have read the FAQ thoroughly, you will know more about what you
    need to do when presenting responses.
    Dr J R Stockton, Nov 21, 2006
  10. javelin

    javelin Guest

    I apologize for my apparent ignorance, Dr J. I was assuming the FAQ
    mentioned was a reference to a posting here on this , as I've seen FAQ
    postings in other newsgroups.
    javelin, Nov 22, 2006
  11. javelin

    javelin Guest

    Thanks David. I have some rudimentary knowledge of AJAX, and have used
    XML to display data in web pages. I don't think it will kill me, I was
    just not sure if it was the best tool for checking database on the fly.
    I actually have to call a component, so I'll have to see if AJAX will
    do the trick.

    Thanks again.
    javelin, Nov 22, 2006
  12. javelin

    javelin Guest

    Jeremy, I just got to your post after replying to a few others, so I'm
    sorry I top posted my replies on those as well. Thanks for the notice.

    Also, thanks for the reference to XMLHttpRequest. I'll be sure to
    research and test it. I am hoping I can figure out how to call
    components with it as well.

    Thanks once again.

    javelin, Nov 22, 2006
  13. In comp.lang.javascript message
    Don't apologise for your manifest ignorance and/or stupidity. Instead,
    terminate its manifestation By reading and understanding firstly what
    you quote and secondly the FAQ itself. Then consider posting further
    Dr J R Stockton, Nov 22, 2006
  14. javelin

    Yanick Guest

    javelin a écrit :

    Consider using an internal frame (<iframe>), and look at this document

    You might find what you're looking for.
    Yanick, Nov 23, 2006
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.