问题
I'm writing some Javascript code and I'm trying to change the current page as the result of the user clicking a button. I'm using this snippet of code:
window.location.replace("/customer/order/12");
containing the relative URL within my site that I want to navigate to. When this code runs (looking at it in Firebug), the url string looks correct, but the page just does a refresh to what it's currently on. Looking at the headers with HttpFox the first thing I see is a result of (Aborted), Type: NS_BINDING_ABORTED. However, if I issue this command:
window.location.replace("/customer/order/12");
from Firebug, the browser goes to the correct url that I specified ("/customer/order/12").
Can anyone help me determine what's going wrong here?
Thanks in advance! Doug
回答1:
You may get NS_BINDING_ABORTED
when a load is interrupted by something else, typically a page navigation.
How are you calling this method? If it's in response to a click on a link or button, you may be forgetting to return false
to cancel the default action. In which case first your script would start to navigate to /customer/order/12
, then the link or form would be followed, causing a navigation that cancels your script's one.
来源:https://stackoverflow.com/questions/2624941/ns-binding-aborted-javascript-window-location-replace