We're using a control that uses Callbacks in our ASP.NET page.
- The control works fine in FireFox, Google Chrome, etc.
The control works fine if we do not use ASP.NET AJAX History. As soon as we call this code, the callbacks stop working in IE (6, 7 and 8):
ScriptManager.GetCurrent(P开发者_开发百科age).AddHistoryPoint("h", id);
I did some server side debugging to figure out that RaiseCallbackEvent was not fired in IE, but was fired for others.
- I have debugged using Fiddler and observed that it was not querying the appropriate URL. The server returns an invalid request error.
Other browsers send the HTTP POST to: test.aspx
However, IE is sending it to: test.aspx%23&&h=12
This is because the URL in the browser's bar is test.aspx#&&h=12, because of our AJAX History Control.
How can I force IE to drop the anchor used for AJAX history when calling WebForm_DoCallback in JavaScript?
Reading the contents on WebForm_DoCallback, I didn't see anything that set the url of the server call. This means that it is either getting it fromthe form action or sending it to the current page. Try setting the form's action attribute.
精彩评论