метод ajax - PullRequest
       13

метод ajax

0 голосов
/ 05 января 2009

Я использую:

[ajax.ajaxmethod()]
public void fnName()

содержащий:

response.redirect("sample.aspx");

или

server.transfer("sample.aspx");

оба не работают ... какое решение?

в этом блоке я пытался вызвать функцию javascript как

scriptmanager.registerstartupscript(page,gettype(),"sample","javascriptfunction()",true);

это тоже не работает ..

Ответы [ 3 ]

1 голос
/ 05 января 2009

Я не знаю, как вы это делаете с ASP.NET AJAX, но в Ra-Ajax вы бы использовали что-то вроде этого;

AjaxManager.Instance.WriterAtBack.Write("window.location='foo.aspx';");

Я предполагаю, что ASP.NET AJAX также имеет какой-то метод для добавления JavaScript обратно в Ajax Callbacks, как это делает Ra-Ajax, и что вы можете использовать его для добавления перенаправления window.location ...

Нет другого способа сделать это, как я знаю ...

Однако для Ra-Ajax есть также «сокращенная» версия для перенаправления, которую можно найти здесь; AjaxManager.Instance.Redirect

Я был бы удивлен, если бы в ASP.NET AJAX не было ничего подобного ...

1 голос
/ 05 января 2009

Полагаю, проблема в том, что вы пытаетесь выполнить код на стороне сервера (C #) на стороне клиента. Как ответил Томас, Javascript, эквивалентный response.redirect ("foo.aspx") или server.transfer ("foo.aspx"), является window.location = 'foo.aspx'.

0 голосов
/ 05 января 2009

Вы должны предоставить более подробную информацию, но я собираюсь предположить, что вы ожидаете, что ваш ajax-запрос станет перенаправлением страницы? Это никогда не сработает - в лучшем случае сам запрос ajax будет перенаправлен на ваш новый контент.

Вам нужен ответ ajax, чтобы предоставить URL-адрес, на который вы хотите перенаправить, и интерфейс, чтобы понять формат этого ответа (потому что в противном случае это просто строка) и действовать на него (например, document.location = foo). Т.е. перенаправление должно произойти на стороне клиента.

Конечно, вы можете спросить что-то совершенно другое.

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