Page OnLoad не запускает изменение строки запроса - PullRequest
0 голосов
/ 02 декабря 2010

У меня проблема с тем, что событие OnLoad не запускается, когда я перехожу на страницу и просто изменяю строку запроса. Если я выполняю обратную передачу, она вызывается, тогда меняются строки запроса, которые вызывают больше OnLoad.

Вот как я пытаюсь. Я перехожу на страницу OnLoad запускается -> затем меняю обновления страницы строки запроса (обновляются все связанные элементы) OnLoad не запускается -> Я выполняю обратную передачу с использованием кнопки OnLoad запускается -> затем меняю строку запроса запускается OnLoad.

Я попытаюсь объяснить более подробно.

Система имеет окно входа в систему, когда я вхожу в систему, я перехожу на другую страницу aspx, отправляющую два сообщения строки запроса, последняя строка запроса - число (page.aspx? Key = text82 & key2 = 2010). Когда я попадаю на страницу в первый раз, когда вызывается событие PageLoad, и все в порядке, если я в браузере меняю ключ 2 на 2011 и нажимаю клавишу ввода, вызывается PageLoad, но все мои связанные элементы обновляются (GrivView и т. Д.) , Если я затем выполняю обратную передачу с помощью кнопки, вызывается PageLoad. Если я теперь изменю 2011 обратно на 2010 и нажму Enter, вызывается PageLoad.

Я пытаюсь, это firefox, который вызывается PageLoad каждый раз.

Я устал писать тестовый веб-сайт, но у меня не возникает та же проблема, но я обнаружил, что в IE 8 изменение строки запроса на тот же номер и нажатие клавиши ввода PageLoad не вызывается. Но, делая это в Firefox, вы получаете ответный огонь. Вот код теста

<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master"     AutoEventWireup="true"
CodeFile="Default.aspx.cs" Inherits="_Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<h2>
    Welcome to ASP.NET!
</h2>
<p>
    <asp:Button ID="Button1" runat="server" Text="Button" />
    <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="~/Default2.aspx?t=tt&   tttttt=2010">HyperLink</asp:HyperLink>
</p>
<p>
    You can also find <a href="http://go.microsoft.com/fwlink/?LinkID=152368&amp;clcid=0x409"
        title="MSDN ASP.NET Docs">documentation on ASP.NET at MSDN</a>.
</p>
</asp:Content>

Переходит к

<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/Site.master" CodeFile="Default2.aspx.cs"
Inherits="Default2" %>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label><asp:Button ID="Button1"
    runat="server" Text="Button" />
</asp:Content>

Событие OnLoad Default2.aspx

protected void Page_Load(object sender, EventArgs e)
{
    Label1.Text += "Called " + DateTime.Now.ToString();
}

1 Ответ

0 голосов
/ 02 декабря 2010

Я обнаружил проблему. Похоже, кэш браузера давал мне проблемы. Нажмите F12 и очистили кеш, все работает.

...