有没有人在Google Chrome中执行两次Page_Load有任何问题? 这是一个简短的问题,我不知道还有什么可以解释......
我有一个简单的asp.net页面,在Firefox和IE中它都运行良好。 但在Chrome中,Page_Load被解雇了两次......
任何人都有任何想法?
稍后编辑: - 奇怪的是我有4个中继器......用随机值绑定。随机方法被两次触发(因为页面加载了两次)但是转发器采用了INITIALLY值...所以,在渲染步骤之后,第二个帖子以某种方式被提升。
第3次编辑:仅在刷新时发生!
解决方案(在我的情况下):有一个空的img src,这就是原因
答案 0 :(得分:39)
如果页面包含没有src属性的img标签(或者src为空等),我会在IE中注意到同样的问题。不确定Chrome是否做同样的事情,但值得检查,对吗?
答案 1 :(得分:11)
对我来说问题是因为扩展 Firebug Lite for Google Chrome 。停用后,页面只会加载一次。
答案 2 :(得分:6)
我有一个非常类似的问题: Chrome和Firefox加载页面两次, Internet Explorer加载一次。
问题在于我的.htaccess
:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
当浏览器请求favicon.ico时,我的index.php页面被调用,从而创建了对服务器的双重访问权限。 我的解决方案是创建一个favicon.ico,虽然我也可以使用index.php处理这种特殊情况,甚至.htaccess,但我还是需要一个favicon.ico:)
答案 3 :(得分:5)
我有同样的愚蠢问题。 页面加载两次,更新变为空白。
感谢这篇帖子,我查看了我的CSS表。
我删除了这一行:
body { background-image:url(); } 强>
那就是问题
答案 4 :(得分:4)
我最近有两次Chrome渲染问题,这个问题的原因是
<iframe src="#"></iframe>
一旦我将其设置为
<iframe></iframe>
或完全删除iframe,然后不再出现双重渲染。
答案 5 :(得分:1)
除了Chris Shaffer的答案让我走上了正确的轨道之外,我想补充一点,在我的情况下,还有一个带有空src的<script>
标签导致问题。
也许它适用于所有带有空src的元素。
答案 6 :(得分:0)
就我而言,它是我的 index.html 文件头部的 <link rel="shortcut icon" href="#" />
标记:
<html lang="en">
<head>
...
<link rel="shortcut icon" href="#" />
...
</head>
...
</html>
我刚刚删除了那条线,问题就解决了。
答案 7 :(得分:0)
到目前为止,我已经使用Chrome多次测试ASP.NET页面,但从未遇到过这种情况。你在客户端做什么可能导致这种情况?你在做任何AJAX的东西吗?
答案 8 :(得分:0)
我遇到了同样的问题,一旦关闭JSON Viewer扩展,问题就解决了。 我可以推荐此扩展用于查看JSON,而不会产生额外的请求: https://chrome.google.com/webstore/detail/json-formatter/bcjindcccaagfpapjjmafapmmgkkhgoa
答案 9 :(得分:0)
基于Johann的回复,我检查并禁用了google chrome中的每个扩展程序,并发现Flash扩展程序导致我的浏览器重新加载了两次。删除后,问题解决了!!
答案 10 :(得分:0)
这是另一篇关于为什么会发生这种情况的精彩文章:https://www.nczonline.net/blog/2009/11/30/empty-image-src-can-destroy-your-site/
我在ASP.NET网站上使用Chrome时遇到了同样的错误。当IsPostBack设置为False时,我再次触发页面生命周期。
这给我带来了各种各样的问题。
答案 11 :(得分:0)
这可能是其中一个扩展/插件的问题。尝试隐身模式 - 这对我有所帮助。
答案 12 :(得分:0)
我有同样的问题。但是我的“错误”位于我的css文件中。
我正在使用.htaccess将所有内容重写回我的根文件夹但已使用
background-image: url('../img/login_facebook.png')
在我的css文件中。我删除了..
,问题就解决了。
答案 13 :(得分:0)
陷入同样的问题。我使用的是DOM Snitch。
我禁用了它,它立即停止了两次回复。
看了之后,它似乎包含2个没有href属性的标签。因为它是Chrome扩展程序,它会被注入到客户端的DOM中,我想这会导致Webforms页面回发两次。
如果有人看到这个,请务必检查您正在使用的任何扩展程序和/或插件。
答案 14 :(得分:0)
我也有这个问题。
有趣的是,我在整个“表单”标签中添加了“visible = false”,使页面完全为空 - 它仍然加载两次。我还调整了DOCTYPE,检查了img-tags的空源等等。
它仍然加载两次。
但我注意到这只发生在“localhost”上。远程网站工作正常。
我认为可能与DNS有关,但“127.0.0.1”也加载了两次。这让我疯了......
答案 15 :(得分:0)
基于Gecko的浏览器显然在标记不正确时执行此操作。这意味着XHTML和CSS。
以下是关于此问题的精彩帖子:http://www.110mb.com/forum/how-to-stop-firefox-dual-pageloads-t27704.0.html
这就是为什么当你有一个空白的src属性或一个空白的href属性时,你们中的一些人会遇到问题。语法不正确,浏览器将其读作“错误”。我想这是一种更不引人注意的错误类型,否则你甚至都不会注意到,但是由于你正在处理它的页面的性质,它变得明显并且表现为一个相当突兀的问题。
某些浏览器认为是“错误”,什么是“可通过”也可能略有不同,这可以解释为什么有些人在FF中遇到问题而不是在Chrome中,反之亦然。
感谢你不是在我的鞋子里。由于这个问题,我有一个页面发送了两次电子邮件,并且我无法修复坏标记,因为只有太多的内容可以解决在太多地方生成的问题,很多CSS和不幸的是,HTML问题也是动态驱动的。
我仍然不理解它抓住该页面的原因,虽然它遇到了这种性质的不合规问题但是。
答案 16 :(得分:0)
它也不喜欢空的href的
我有一个空的favicon链接标签,它做了同样的事情。无论谁说空src都把我放到了那里,只是剥掉了所有东西直到它开始工作
答案 17 :(得分:0)
如果你将你的图像标签src设置为#或为空,它将导致两次页面加载调用,我在chrome上和firefox之前面对这个。
您可以放置任何字符或字符串值而不是空或#来解决此问题。
答案 18 :(得分:0)
我在PHP和Firefox上遇到了类似的问题。
问题来自于Firefox解释为重新加载页面的错误样式定义。 我不记得究竟是什么,但在这个想法中,可能就像
.my_class { background: url(#); }
我建议首先尝试隔离您的CSS,然后再检查您的HTML部分,以检查问题是否可能来自它。
答案 19 :(得分:0)
在Page_Load中,检查Page.IsPostBack和Page.IsCallback的值,看看它们在两次调用之间是否有所不同。如果它们不同,它可能是一些javascript重新执行或chrome重定向两次或类似奇怪的东西。
答案 20 :(得分:0)
我注意到当我切换到Chrome v.4(开发人员的频道)时,这种情况开始发生在我身上,以便我可以开始使用扩展程序。似乎没有v.3,稳定版本的问题。
答案 21 :(得分:-2)
我相信Google Chrome的运作方式。我在索引页面上放了一些代码来写入一个加载了文件名的文件,每次加载页面时(使用刷新或新窗口),它都会在文件中放入2个结果。
编辑:我将我的索引文件重命名为test.php并再次运行它。这次只有一个结果。这个问题让我感到沮丧。
编辑:我将我的文件重命名为index.php并运行它。同样的问题。然后我将我的.htaccess(对于mod_rewrite)重命名为htaccess,这样它就不会被解析而问题就消失了。在我发现这个之后,我在.htaccess文件中禁用了url重写,问题仍然消失了(最后)。我再做了一次测试(如果人们还在阅读这个废话),并发现当你从.htaccess文件重定向时谷歌加载了两次页面。我找到了一个似乎可以解决这个问题的小解决方法。
不确定这是否适用于asp.net。我只知道php编码和apache服务器。