Solved

cancel postback in a imagebutton control

Posted on 2004-09-09
22
1,612 Views
Last Modified: 2012-06-21
Hi

How i can cancel the PostBack in one ImageButton Click Event?
0
Comment
Question by:lem2802
  • 9
  • 4
  • 4
  • +3
22 Comments
 
LVL 8

Expert Comment

by:daffodils
Comment Utility
Why do you want that.. do you want to disable postback on some condition.

If not then why not use an Image control instead??
0
 
LVL 8

Expert Comment

by:daffodils
Comment Utility
Adding on..

If you need to use an ImageButton control and want to cancel postback..
Use the "Enabled" property.. it will disable postback.

myImageButton.Enabled = false;

This property is not listed in the Property pages, when you use Visual Studio .NET.. but it is an inherited property of ImageButton control(inherited from Image).. see the MSDN documentation here..
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemwebuiwebcontrolsimagebuttonmemberstopic.asp
0
 
LVL 17

Author Comment

by:lem2802
Comment Utility
ok. but i need to use the control... if i set the property enabled=false... then i'll can't use the control in the next time
0
 
LVL 8

Expert Comment

by:daffodils
Comment Utility
You could enable / disable it conditionally ..

As I asked.. >>Why do you want to do that (disable postback) ?? On what condition do you want it to work and on what condition do you want it to not work?
0
 
LVL 33

Expert Comment

by:raterus
Comment Utility
well I suppose you could do this..

myImageButton.attributes.add("onClick", "javascript:return false")
0
 
LVL 33

Expert Comment

by:raterus
Comment Utility
rather, best to put a semi-colon at then end of that, or you might run into some javascript errors..
myImageButton.attributes.add("onClick", "javascript:return false;")
0
 
LVL 17

Author Comment

by:lem2802
Comment Utility
but the link don't execute
0
 
LVL 17

Author Comment

by:lem2802
Comment Utility
i have frames in my site and i need press the imagebutton then send the url link to an other frame
0
 
LVL 33

Expert Comment

by:raterus
Comment Utility
well "execute" in an imagebutton is a postback!, unless you've written some javascript otherwise that you aren't telling us about.
0
 
LVL 17

Author Comment

by:lem2802
Comment Utility
ok start again...

I need when the event click succed from a imagebutton... goto an url but in other frame!
0
 
LVL 17

Author Comment

by:lem2802
Comment Utility
and i need don't reload the frame where is the imagebutton
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 33

Expert Comment

by:raterus
Comment Utility
Do you need to link to postback?  ImageButtons are actually form elements (if you ever look at the source), if you don't need the page to postback then you shouldn't be using them.  If you just want to do client-side operations you should just define a regular image "<img src="blah.jpg" /> and add an onClick handler that in client-script will change the src attribute of the <iframe>.  Is this what you are after?
0
 
LVL 17

Author Comment

by:lem2802
Comment Utility
ok. i'll try it
0
 
LVL 18

Expert Comment

by:tusharashah
Comment Utility
You can even use HyperLink Control from WebControls.

 - Set ImageUrl property of HyperLink to your image.
 - Set NavigateUrl and Target URL according to your need

-tushar
 
0
 
LVL 17

Author Comment

by:lem2802
Comment Utility
ok tusharashah... and how i can change the image when the mouse pointer is over the hyprlink control?
0
 
LVL 15

Expert Comment

by:Thogek
Comment Utility
It doesn't sound like you need server-side control (where you currently have your ImageButton) at all.  Just plain ol' HTML:

    <a href="NewPageUrl.aspx" target="otherFrameName"><img src="yourImage.jpg"></a>

If you wanna check the image onmouseover:

    <a href="NewPageUrl.aspx" target="otherFrameName"
        onmouseover="document.getElementById('imgBtn').src='MouseOverImage.jpg';"
        onmouseout="document.getElementById('imgBtn').src='yourImage.jpg';"
    ><img id="imgBtn" src="yourImage.jpg"></a>
0
 
LVL 18

Expert Comment

by:tusharashah
Comment Utility
I will check out the exact syntact, but for mouseover image rotation you can add an attribute to HyperLink in your page_load event liek following

HyperLink1.attributes.add("onMouseOver", "javascript:this.src='NEW URL';")

-tushar
0
 
LVL 8

Expert Comment

by:boulder_bum
Comment Utility
I didn't read all the above, I just wanted to add something about the answer in case you need it.

If you'd like to conditionally cancel postback for an image button, you can use a javascript confirm dialog:

//in code
myImageButton.Attributes.Add( "onclick", "return confirm( 'Do you still want to PostBack?' );" );
0
 
LVL 17

Author Comment

by:lem2802
Comment Utility
tushar:
your code don't work:

HyperLink1.attributes.add("onMouseOver", "javascript:this.src='NEW URL';")
0
 
LVL 18

Accepted Solution

by:
tusharashah earned 500 total points
Comment Utility
Hello lem2802,
Add following 2 line in your Page_Load event it will work:
------------------------------------------------------------------------------------------------------------------------------

HyperLink1.Attributes.Add("onMouseOver", " this.firstChild.src='[Image1]' ");
HyperLink1.Attributes.Add("onMouseOut", "this.firstChild.src='[Image2]' ");

------------------------------------------------------------------------------------------------------------------------------

-tushar
0
 
LVL 17

Author Comment

by:lem2802
Comment Utility
tanks tushar
0
 
LVL 18

Expert Comment

by:tusharashah
Comment Utility
Thanks for the A.
Glad I could help.  :)

-tushar
0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

I have developed many web applications with asp & asp.net and to add and use a dropdownlist was always a very simple task, but with the new asp.net, setting the value is a bit tricky and its not similar to the old traditional method. So in this a…
This article discusses the ASP.NET AJAX ModalPopupExtender control. In this article we will show how to use the ModalPopupExtender control, how to display/show/call the ASP.NET AJAX ModalPopupExtender control from javascript, how to show/display/cal…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

772 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

16 Experts available now in Live!

Get 1:1 Help Now