我在部署中遇到了一些奇怪的页面刷新,我似乎无法找到它的原因或在开发中复制它。有没有办法让 javascript 错误或异常导致页面重新加载?或者一些帮助我缩小原因范围的提示?
它发生在现场部署时,我无法在本地测试时复制它。我知道它正在发生,因为我正在使用 ELMAH 记录异常。用户正在使用 Firefox。
UrlReferrer:example.com/products/edit/100
GET 的 URL:example.com/products/edit/undefined
而且我没有看到任何可以从该页面调用的 window.location = '/products/edit/' + id(其中 id 可能未定义)形式的 javascript 代码。
但是别处也有像上面这样的调用。我希望这是有道理的。 :)
最佳答案
不,没有 Javascript 错误本身会导致页面重新加载。如果发生错误,浏览器没有理由重新加载页面,它唯一希望以此实现的是导致相同的错误再次发生。
因此,Javscript 错误可能导致重新加载的唯一原因是脚本在正常工作时阻止重新加载,或者它通常会在某些特定情况下导致重新加载但未能将其限制在该情况下。
示例:如果您有防止点击导致回发的代码:
<a href="page.html" onclick="return false;">
如果脚本中有错误,它将不再阻止重新加载。
关于javascript 错误导致页面重新加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2797856/