Tuesday, March 13, 2012

Strange page redirection using enter key

This is a very strange one and has me stumped.

My login page is redirecting the user to a new virtual directory index.aspx page when the enter key is hit.

Clicking the submit button works just fine, and have tested it commenting out the code and
hitting the enter key and it still redirects.

I have tried with no luck to use some code I have before that works just fine on another page, with no redirection, that page is in the same folder with the same user controls.

This didn't do the trick in the page load event to use the enter key for the submit click...


Page.RegisterHiddenField("__EVENTTARGET", cmdSubmit.ClientID)

Why is this one page redirecting to another page?
I have checked the code over so many times and found nothing.

I need some suggestions on what to look for or other ways to test this to find out why.
I never had to do a trace like this, I came across it a few times where printing out the stack trace is possible. Anyone have a link to do this?

Thanks all,

ZathMy guess is that the "default" button on this page is not the one you expect.

Presumably you're talking aboutthis login.aspx page? And pressing Enter moves the user off toztrader/index.aspx?

If so,surely one of your event handlers is doing a Response.Redirect to this page??
Yes, you are correct on that is the login page and that is the page it's redirecting to. You must have visited my site... LOL

But you did get me thinking a bit more and I removed the ZciFi Trader button with code in it, replaced it with a hyperlink, then moved the needed code elsewhere and that did the trick.

But still, why is the enter key activating that button which is on a user control?
They are even different names.

Very strange indeed.

Thanks,

Zath
> why is the enter key activating that button which is on a user control?

The fact that it's in a User Control makes no difference ... by the time the page gets to the user, it's all a single HTML page.

If you look at the HTML of your page (View > Source), you'll see a number of <input type="submit" ...> tags. Whichever occurs first in the HTML will be considered the "defaut" button. So clicking Enter while in any textbox of that form, not matter how far it is located from that first <input type="submit"> button, will trigger that submit button.

Very confusing if you don't know that this is how HTML forms work. (And I don't think this behaviour is consistent across all browsers.)
Yes, I see what you mean. Good to know.

I just added the new feature to my site this weekend, which I try to do on the weekends beacuse no matter how much you test, there's always something you missed.

Thanks again,

Zath

0 comments:

Post a Comment