Bob .
Bob .

Reputation: 551

onsubmit property fails to open new window

A quick question here regarding forms. I've searched the web and can't seem to figure out why what I've implemented isn't working.

The idea is simple. I have a form inside a JSP page. The form has an 'onsubmit' property defined to open a different jsp with some parameters. Inside the form I have a few buttons, one of which calls a JavaScript function, which in turn submits the form (under some conditions).

Here's the code: JSP:

...
<form id='testForm' onsubmit="window.open('another.jsp')">
  <input type="button" onclick="callJsFunction()" />
  ..
</form>

JavaScript:

function callJsFunction() {
  if (launchNow == 1) {
    var form = document.getElementById("testForm");
    form.submit();
  }
}

If I add target="_blank" to the form definition, a new window does open, but NOT the jsp I want to open. Ultimately, I want the form to perform a servlet action (using the action attribute) and then open the new jsp. Any ideas???

Thanks!

Upvotes: 1

Views: 4040

Answers (3)

Bob .
Bob .

Reputation: 551

The solution to what I was looking for is found here: Javascript Post on Form Submit open a new window

Rather than setting target="_blank", I can set the target to the window I define and open. In my servlet, I redirect to the desired jsp, and it appears in the new pop-up window.

Upvotes: 1

TryingToImprove
TryingToImprove

Reputation: 7407

I might be wrong but is this what you are looking for?

Please see the working demo at this link: http://fiddle.jshell.net/vf6AC/show/light/ (don't work in the jsfiddle)

<form action="http://google.com" id="testForm">
    <input type="submit" />
</form>​

<script type="text/javascript">
var testForm = document.getElementById("testForm");

testForm.onsubmit = function(e){
    window.open("http://stackoverflow.com");

    return true;
};​
</script>

See the jsfiddle here: http://jsfiddle.net/vf6AC/

Upvotes: 0

HMarioD
HMarioD

Reputation: 842

<form id='testForm' action='another.jsp' target='_blank'>

Upvotes: 0

Related Questions