Кнопка в ASP, вызываемая в файле C # через Javascript - PullRequest
1 голос
/ 23 июня 2011

У меня есть страница asp.net, где она имеет следующие свойства

<asp:Button ID="btnBack" runat="server" CssClass="Button" Text="< Back to Home" /></td>

И в файле кода C # я делаю что-то вроде этого

btnBack.Attributes.Add("onclick", "javascript:history.go(-1);return false");

Проблема в том,не всегда возвращает меня на домашнюю страницу, но на какую-то другую страницу ..

В любом случае я могу добавить в эту функцию страницу, на которой я хочу перейти, например (и я знаю, что это неправильно, но, пожалуйста, посмотрите, что яхочу достичь)

    btnBack.Attributes.Add("onclick", "~/Home.aspx");

Как-то так

Буду признателен за вашу помощь

Ответы [ 3 ]

1 голос
/ 23 июня 2011

Причина, по которой вы не всегда получаете поведение при возврате на домашнюю страницу, заключается в том, что history.go(-1) просто говорит браузеру перейти на предыдущую страницу, которая была загружена. Это не всегда может быть домашняя страница.

Простое решение от javascript - изменить свойство location, которое вызовет посредник для загрузки предоставленного URL

btnBack.OnClientClick = "window.location='http://www.google.com'";

OnClientClick прикрепит строку javascript к событию onclick в разметке html для вас. Это проще и чище ИМО чем то типа btnBack.Attributes.Add("onclick", "window.location=~/Home.aspx"

0 голосов
/ 23 июня 2011
btnBack.Attributes.Add("OnClick", "javascript:window.location.reload('Home.aspx');return false;")
0 голосов
/ 23 июня 2011
btnBack.Attributes.Add("onclick", "location='http://google.com'");
...