сделать обратную передачу, затем перенаправить на страницу - PullRequest
0 голосов
/ 09 сентября 2010

Я пытаюсь выполнить обратную передачу javascript, а затем перенаправить на другую страницу, но она продолжает отправлять обратно на текущую страницу

Вот мой код

$(this).prepend('<a class="booknow2 sidelink sidelinkNew" href="javascript:__doPostBack(\'SetSess\',\'\')"><img src="../../images1/button/leftEdge.png" width="4" height="35" style="float:left; margin:0; padding:0;" alt="book now" /><img src="../../images1/button/rightEdge.png" width="4" height="35" style="float:right; margin:0; padding:0;" alt="book now" /><span>Check availability &raquo;</span></a>');

А вот моя SetSess команда обратной передачи

Sub SetSess()

Session("TenHolStDateNewCheck") = "%"

response.redirect("searchresults/default.aspx")

End Sub

У кого-нибудь есть идеи?

Спасибо

Джейми

Ответы [ 3 ]

0 голосов
/ 09 сентября 2010

У вас должна быть скрытая ссылка на кнопку, чтобы на странице продукта было разрешено принять это сообщение обратно

    <asp:LinkButton ID="LinkButton1" runat="server" 
         onclick="LinkButton1_Click" style="display:none;"></asp:LinkButton>

Затем вы можете перезвонить вашему сообщению.код должен быть примерно таким.

$(this).prepend('<a class="booknow2 sidelink sidelinkNew" 
    href="javascript:__doPostBack(\'<%=LinkButton1.ClientID%>\',\'\')">
    <img src="../../images1/button/leftEdge.png" width="4" height="35" 
    style="float:left; margin:0; padding:0;" alt="book now" /><img src="../../images1/button/rightEdge.png" 
    width="4" height="35" style="float:right; margin:0; padding:0;" 
    alt="book now" /><span>Check availability &raquo;</span></a>');

... и функция для кода позади

protected void LinkButton1_Click(object sender, EventArgs e)
{
 // Here the work and the redirect of you
}

Надеюсь, что эта работа.

0 голосов
/ 09 сентября 2010

Я использовал функцию jquery ajax для вызова страницы, которая устанавливает сеанс, а затем перенаправил

Спасибо за помощь, хотя

0 голосов
/ 09 сентября 2010

__ doPostBack первый параметр заполняет параметр __EVENTTARGET ... Я могу ошибаться, но я не знал, что он автоматически вызывает методы. Я думаю, что вы должны сделать это самостоятельно, выполнив событие Load:

if (request.Form["__EVENTTARGET"] = "SetSess") Then
    SetSess()
End if

НТН.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...