gpt4 book ai didi

asp.net - 内联样式会导致额外的请求

转载 作者:行者123 更新时间:2023-12-02 21:07:22 24 4
gpt4 key购买 nike

On_Load 在一个页面中被调用两次。使用Firebug后我发现它请求

http://localhost/default.aspx

然后它会发出另一个请求

http://localhost/default.aspx#ced3db

我搜索"#ced3db"并在 <table> 中找到它在页面中。当我删除其背景属性时,问题就消失了。

<table width="430" height="281" border="0" 
background="#ced3db" cellpadding="0" cellspacing="0">

我使用了样式属性来避免请求该页面两次。但是,我仍然需要知道:为什么会提出两个请求?我想了解避免重新请求页面的根本原因,因为它会使任何网站变慢。

编辑:这个问题与内联样式和使用 CSS 文件无关。这是为了避免出于性能原因无意中重新请求页面。

注意: On_Load 可能因多种原因被调用两次,请参阅 ASP.NET Page.OnLoad executes twice

  • AutoEventWireUp 为 true,并且您覆盖 On_Load。
  • 用户控件包含 AutoEventWireUp 且值为 true。没试过。
  • 页面或母版页包含 <img src="#"> or <img src="">

最佳答案

我很确定 background table 的属性元素需要图像的 URL。 (我认为它甚至不是该元素的正确属性,或者至少我从未见过它被使用。可能具有特定于浏览器的行为。)

如果是这样的话,那么这种类型就有意义了。在问题末尾您记下:

  • The page or master page contains <img src="#"> or <img src="">

看来这就是这里发生的事情。浏览器将该颜色标签解释为 URL,并向服务器资源发出请求以尝试获取它,因为哈希 URL 本身默认为当前页面。在 anchor 标记中,它只会将焦点移动到页面上的该标记,但在资源引用标记中(例如 img ,但在本例中 table 上的属性需要 URL),它必须提出另一个请求。

更新:对该属性进行一点谷歌搜索会发现许多类似于 this one 的页面。 ,这似乎表明它需要一个 URL。

确实,table元素似乎正式没有 background属性。至少not in HTML 4HTML 5 .

关于asp.net - 内联样式会导致额外的请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9605772/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com