2011-12-19 2 views
0

Я пытаюсь использовать ajax с asp.net mvc app.ASP.NET MVC и простой вызов Ajax

важные вещи, которые я имею в Index.cshtml является:

<p> 
    @Ajax.ActionLink("Get DateTime", "GetDateTime", new AjaxOptions() { UpdateTargetId = "status" }) 
</p> 
<span id="status">No Status</span> 

И в HomeController.cs:

public string GetDateTime() 
{ 
    return DateTime.Now.ToLongTimeString(); 
} 

С этой установкой я предполагаю, что при нажатии на ссылку действий в UI, область пролета только будет обновлена. Однако в результате я получаю совершенно новую белую страницу со временем, напечатанным в верхнем левом углу. Я даже не получил синюю главную страницу mvc.

Web.config утверждает, что UnobtrusiveJavaScriptEnabled является истинным.

Итак, как сделать этот простой вызов ajax?

-pom-

+0

Снова, нашел ответ после публикации. Итак, трюк, чтобы заставить его работать в MVC 3, состоит в том, чтобы включить библиотеку скриптов следующим образом: Pompair

+0

Это звучит как ссылка, сгенерированная из Ajax.ActionLink на самом деле не использует ajax (javascript не связан). Возможно, вы не ссылаетесь на все необходимые файлы javascript (MicrosoftAjax.js). –

+0

Джон, да, это было так. Но, если быть точным, ссылка на MicrosoftAjax.js (и другой файл jor-файла для Micorosft) не создает рабочего решения, я получил этот пример, работающий только с вышеупомянутым * ненавязчивым * js включением. Я не добавлял прямых ссылок на файлы Microsoft.js. – Pompair

ответ

0

Если бы ту же проблему раз.
Вы должны обратиться к сценарию jquery unobtrusive-ajax.

Смежные вопросы