Run JavaScript before Form Submits

S

Scott M.

Instead of using a submit button on your form, use a regular HTML button
that has an onClick event handler on it that calls a function.

In that function, do whatever you like and when you are done invoke
formName.submit()
 
K

Kenneth Keeley

Hi
How can I run a java script function before a form is submited back to the
server.
What I wish to do is have a upload form that when a user clicks the submit
button a javascript function opens a second window after this the buttons
onclick event should be run.

Is any of this possible.
 
A

Andrew de la Harpe

call the javascript function and then return true.
the form will be submitted as normal.
eg
myButton.Attributes.add("onclick","doThisFirst();");

on the page

<script>
function doThisFirst() {
alert('hello');
return true;
}
</script>
 
D

dingo

Yep, this is why I am having such hard time seeing the
benefits of ASP.NET. So far I feel like they turned ASP
development with .NET into a beefed up version of
FrontPage. Where as on the windows side of things I think
it is a huge improvement.
 
S

Scott M.

Oh, I think you haven't worked with it long then. It is a completely new
paradigm. Much more powerful. Much more scaleable. Not even close to
anything that FP can do.

It just so happens that your question wasn't really a .NET question. It was
a client-side JavaScript question.
 
S

Scott M.

In the page_load event...

If IsPostBack() Then
'Second or subsequent trip to the server

Else
'Fist time data was submitted

End If
 
L

lewi

Instead of using a submit button on your form, use a regular HTML button
that has an onClick event handler on it that calls a function.
At the HTML level form objs have a OnSubmit() and OnReset() events
handlers...

With...

1) In you script tag...
function verifyForm(IncomingForm)
{
if(FORMISVALID)
return true;
else
return false;
}

2) In form tag(1 or more forms supported cause of IncomingForm param above
just send verifyForm(...) this)...
<form ... onSubmit="return verifyForm(this);">...</form>

Now you just need to add you form processing code and your ready to go...
 
K

Kenneth Keeley

Ok then,
But what Serverside code is required to make sure the submit button was
pressed and not a clear or browser refresh button.
 
K

Kenneth Keeley

Scott M. said:
In the page_load event...

If IsPostBack() Then
'Second or subsequent trip to the server

Else
'Fist time data was submitted

End If

OK but this doesn't stop the submit code from running if you press a
different button or refresh the page.
 
S

SSW

Use Javscript below
<script language="javascript">
function ConfirmOnSummit()
{
if (typeof(Page_ClientValidate) == 'function')
{
if (Page_ClientValidate())
{
if(confirm("What Ever u what to confirm or run a Java Script
code?")==1)
return true;
else
return false;
}
}
}
</script>
Create tage in aspx page.
<span onclick="javascript: return ConfirmOnSummit();"><asp:button
id="btnSubmit" runat="server" CausesValidation="False"
Text="Submit"></asp:button></span>

This Will surely work. It take all the advantage of Asp.Net

Thanks,

sswalia
MCAD, MCAD, OCA
 
S

Scott M.

Kenneth Keeley said:
OK but this doesn't stop the submit code from running if you press a
different button or refresh the page.

If you refresh the page, you are not re-submitting the data, you are
re-requesting the page with whatever data was posted previously.

If you want to prevent ASP.NET server-side code from running you could use
only HTML controls and the client-side JavaScript I described in my earlier
post.
 

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. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,535
Members
45,007
Latest member
obedient dusk

Latest Threads

Top