cancel postback in a imagebutton control

Hi

How i can cancel the PostBack in one ImageButton Click Event?
LVL 18
Elvio Lujan.Net Senior DeveloperAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
tusharashahConnect With a Mentor Commented:
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
 
daffodilsCommented:
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
 
daffodilsCommented:
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
Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
Elvio Lujan.Net Senior DeveloperAuthor Commented:
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
 
daffodilsCommented:
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
 
raterusCommented:
well I suppose you could do this..

myImageButton.attributes.add("onClick", "javascript:return false")
0
 
raterusCommented:
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
 
Elvio Lujan.Net Senior DeveloperAuthor Commented:
but the link don't execute
0
 
Elvio Lujan.Net Senior DeveloperAuthor Commented:
i have frames in my site and i need press the imagebutton then send the url link to an other frame
0
 
raterusCommented:
well "execute" in an imagebutton is a postback!, unless you've written some javascript otherwise that you aren't telling us about.
0
 
Elvio Lujan.Net Senior DeveloperAuthor Commented:
ok start again...

I need when the event click succed from a imagebutton... goto an url but in other frame!
0
 
Elvio Lujan.Net Senior DeveloperAuthor Commented:
and i need don't reload the frame where is the imagebutton
0
 
raterusCommented:
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
 
Elvio Lujan.Net Senior DeveloperAuthor Commented:
ok. i'll try it
0
 
tusharashahCommented:
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
 
Elvio Lujan.Net Senior DeveloperAuthor Commented:
ok tusharashah... and how i can change the image when the mouse pointer is over the hyprlink control?
0
 
ThogekCommented:
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
 
tusharashahCommented:
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
 
boulder_bumCommented:
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
 
Elvio Lujan.Net Senior DeveloperAuthor Commented:
tushar:
your code don't work:

HyperLink1.attributes.add("onMouseOver", "javascript:this.src='NEW URL';")
0
 
Elvio Lujan.Net Senior DeveloperAuthor Commented:
tanks tushar
0
 
tusharashahCommented:
Thanks for the A.
Glad I could help.  :)

-tushar
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.