Solved

JavaScript "return false" not stopping postback on asp:LinkButton click

Posted on 2008-10-02
3
2,779 Views
Last Modified: 2012-06-27
I've got some simple JavaScript that fires on a asp:LinkButton click to mare sure certain TextBoxes on the from are not null before being sent to the server.  The JavaScript is being fired, displaying a popup prompt to the user if a textbox is empty, however the JavaScript "return false" is not stopping the postback/OnClick events from firing.  Please advise.  Attached is the code.

Thanks,

Pete
*****************

    ASP:

*****************

<asp:LinkButton 

    ID="linkScheduleEmail" 

    runat="server" 

    Text="Schedule"

    OnClick="Email_ScheduleDelivery" 

    CssClass="Link-Black" 

    OnClientClick="javascript:CheckEmailBeforeSchedule()" />

<asp:LinkButton 

    ID="linkEmailSend" 

    runat="server" 

    CssClass="Link-Black" 

    Text="Send Now" 

    OnClick="Email_Send" 

    OnClientClick="javascript:CheckEmailBeforeSend()" />
 
 

*****************

   JavaScript:

*****************

//<!--
 

function CheckEmailBeforeSend()

{

    var tbSendTo = document.getElementById('ctl00_ContentPlaceHolder1_tbEmailTo');

    var tbSendSubject = document.getElementById('ctl00_ContentPlaceHolder1_tbEmailSubject');

    

    if(tbSendTo.value == "")

    {

        alert("ERROR: No Recipient Address Specified!");

        return false;

    }

    else if(tbSendSubject.value == "")

    {

        alert("ERROR: No Subject Defined!");

        return false;

    }

}
 

function CheckEmailBeforeSchedule() 

{

    var tbScheduleTo = document.getElementById('ctl00_ContentPlaceHolder1_tbEmailTo');

    var tbScheduleSubject = document.getElementById('ctl00_ContentPlaceHolder1_tbEmailSubject');

    var tbScheduleDate = document.getElementById('ctl00_ContentPlaceHolder1_tbEmailDate');

    

    if(tbScheduleTo.value == "")

    {

        alert("ERROR: No Recipient Address Specified!");

        return false;

    }

    else if(tbScheduleSubject.value == "")

    {

        alert("ERROR: No Subject Defined!");

        return false;

    }

    else if(tbScheduleDate.value == "")

    {

        alert("ERROR: No Schedule Date Assigned!");

        return false;

    }

}
 

//-->

Open in new window

0
Comment
Question by:P1ST0LPETE
3 Comments
 
LVL 24

Accepted Solution

by:
glcummins earned 350 total points
ID: 22625921
Try including the return in the link definition:
    OnClientClick="javascript:return CheckEmailBeforeSchedule()" />

Open in new window

0
 
LVL 5

Assisted Solution

by:gemailj
gemailj earned 150 total points
ID: 22626001
return has no effect without using return before calling the method so you have to use return like this
OnClientClick="javascript:return CheckEmailBeforeSend()"

Open in new window

0
 
LVL 10

Author Closing Comment

by:P1ST0LPETE
ID: 31502445
Works perfect now, Thanks!!!
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
Boost your ability to deliver ambitious and competitive web apps by choosing the right JavaScript framework to best suit your project’s needs.
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

26 Experts available now in Live!

Get 1:1 Help Now