なぜ、Ajaxが起きているのかわかりません。 ここIndex.cshtmlでの私のHello Worldコードです:ここでMVC3 AJAX ActionLink "Hello World"うまく動作しません
@ViewBag.Title = "Home Page"
<h2>@ViewBag.Message</h2>
<p>Hello there! Click Update to see the current time!</p>
<div id="MyAjaxDiv"></div>
@Html.ActionLink("Update", "GetTime", new {id="MyAjaxLink"})
はHomeController.csある、それは下にGetTime()関数を呼び出すので、それはちょうど、新しい空白のページに私をリンクし、ディスプレイ「NA」コード:
namespace MvcApplication1.Controllers {
public class HomeController : Controller {
public ActionResult Index() {
ViewBag.Message = "Welcome to ASP.NET MVC!";
return View();
}
public string GetTime() {
if (Request.IsAjaxRequest())
return DateTime.Now.ToString("hh:mm:ss tt");
return "NA";
}
}
}
私は、このリンクをたどっ: Ajax.ActionLink not working, Response.IsAjaxRequest() is always false
しかし、何の違い-with-またはその記事によって提案として分離myscripts.jsファイルにAJAXifyingコードを-without-はありません。それはまだ "NA"の空白のページにリンクしています。 これは
$(function() {
$('#MyAjaxLink').click(function() {
$('#MyAjaxDiv').load(this.href);
return false;
});
});
_layout.cshtml
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Content/myscripts.js")" type="text/javascript"></script>
ファイル「の内容/ myscripts.js」のヘッダで宣言されたコードです助けてください!
申し訳ありませんがmasterviewていることを確認してください。私はちょうどそれを更新しました。それは他の投稿からコピーされました。私は実際に自分のコードで正しいものを使用しました。 MyAjaxLinkとMyAjaxDivはどちらですか?また、スクリプトの有無にかかわらず、空白のページに私を連れて行くのと同じことをするようです。 – Tom
Gotcha ...あなたはまた "Html.ActionLink"を持っていますか、 "Ajax.ActionLink"と書いていますか? – McGarnagle
D:OMG!はい!うーん。 2番目の質問...今は動作しますが、時間は初めて更新されるだけです。それから、もはや爽やかではありません...(編集:これをGetTime()の前に追加... [OutputCache(NoStore = true、VaryByParam = ""、Duration = 0)] – Tom