By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
445,929 Members | 1,830 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 445,929 IT Pros & Developers. It's quick & easy.

How to close a window after form is submitted?

P: n/a
I'm working on a web based file manager. The rename file function creates a new window with a form allowing the user to enter a new file name. Before the form gets submitted, I want to make sure that a valid file name (no "/" or "\" characters) was entered. If the validation functions returns true, the form should be submitted and the window closed. If the function returns false the form window should stay open so the use can enter a new file name. What's the correct way to do this? When I try to add a win
dow.close function I either close the window without submitting the form, or submit the form without closing the window.
Jul 20 '05 #1
Share this Question
Share on Google+
2 Replies


P: n/a
ss******@mit.edu (Seth E Seligman) writes:
I'm working on a web based file manager. The rename file function
creates a new window with a form allowing the user to enter a new
file name. Before the form gets submitted, I want to make sure that
a valid file name (no "/" or "\" characters) was entered. If the
validation functions returns true, the form should be submitted and
the window closed. If the function returns false the form window
should stay open so the use can enter a new file name. What's the
correct way to do this? When I try to add a win dow.close function I either close the window
without submitting the form, or submit the form without closing the
window.


To validate a form field, create a function that returns true it
the field contains a legal value and false if it doesn't. E.g.

<script type="text/javascript">
function validateField(form) {
var result = true;
var response = "";

var fieldValue1 = form.elements['fieldName'].value;
if (fieldValue1.match(/[\\\/]/)) { // contains \ or /
result = false;
response += "Filename may not containt \"\\\" or \"/\".\n";
}

if (!result) {
alert(response);
}
return result;
}
</script>

Then call the function from the form's onsubmit handler, and return
its result:

<form ... onsubmit="return valudateField(this)">
To close the window after the form has been sumitted, you should wait
until you are certain that the form is successfully submitted. That
means that you should close the window in the page that is returned by
the form submit, not in the one containing the form. (You should
ofcourse have a cancel button too.

If the popup window isnt doing anything except querying for a filename,
you could look into the "prompt" function.

/L
--
Lasse Reichstein Nielsen - lr*@hotpop.com
Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'
Jul 20 '05 #2

P: n/a
ss******@mit.edu (Seth E Seligman) wrote in message news:<3e**********************@senator-bedfellow.mit.edu>...
I'm working on a web based file manager. The rename file function creates a new window with a form allowing the user to enter a new file
name. Before the form gets submitted, I want to make sure that a valid
file name (no "/" or "\" characters) was entered. If the validation
functions returns true, the form should be submitted and the window
closed. If the function returns false the form window should stay open
so the use can enter a new file name. What's the correct way to do
this? When I try to add a win dow.close function I either close the window without submitting the form, or submit the form without closing the window.


At least in internet-divergent internet explorer, the close() method
preempts any form submission as if the user closed the window. It is
not programmatically dependent on the return of any previous
instructions. So, window.close() closes the window, suddenly, and
halting whatever may have been processing, which can be useful. The
onSubmit seems to return status immediately, allowing the next
instruction.

Consider having the form handler do the window closing. It would know
when the posting process is complete.
Jul 20 '05 #3

This discussion thread is closed

Replies have been disabled for this discussion.