2
次のコードは、1ビュー、1つの部分図、と1コントローラを示す呼び出します。このビューには、現在の時間を取得するボタンと、その時間を表示する部分的なビューが含まれています。 jQuery経由でボタンをクリックすると、部分ビューのコンテナに$ .load()が呼び出されます。jQuery.load()は一度だけサーバ(不再バインド号)
ボタンの最初のクリックは完全に機能しますが、後続のコールはサーバーに到達しません。関数が起動し、負荷が発生しますが、サーバーは要求を受け取ることはありません。
どのような問題が発生する可能性がありますか?
Index.cshtml
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<title>ContainerView</title>
<script src="@Url.Content("~/Scripts/jquery-1.7.2.min.js")" type="text/javascript"></script>
<script type="text/javascript">
$(function() {
$('#btnRefresh').click(function() {
$("#divTime").load('@Url.Action("GetTime")');
});
});
</script>
</head>
<body>
<div>
<input id="btnRefresh" type="button" value="Get Time"/>
<div id="divTime">
@Html.Partial("_Time")
</div>
</div>
</body>
</html>
_Time.cshtml
@ViewData["Time"]
ContainerController.cs
using System;
using System.Web.Mvc;
namespace PartialViewAjaxFormModel.Controllers
{
public class ContainerController : Controller
{
//
// GET: /Container/
public ActionResult Index()
{
return View();
}
public PartialViewResult GetTime()
{
ViewData["Time"] = DateTime.Now.ToLongTimeString();
return PartialView("_Time");
}
}
}
完璧、ありがとう! – denious
[OutputCache(Duration = 0)]もうまくいくようですが、2つの違いはありますか? – denious
@denious私の頭の上から分からない。私はMSDNに相談したい。 – asawyer