通过Ajax调用部分视图

时间:2014-10-30 12:32:25

标签: jquery html ajax model-view-controller partial-views

我通过Ajax调用部分视图,但它给出了未定义的结果。

我的控制器是:

[HttpGet]
     public  ActionResult CallPartial()
  {
       if (Request.IsAjaxRequest())
       {              
          return PartialView("~/Views/Partial1");
       }
       else
       {
          return View();
       }
    }

我的观点是:

 <div id="divpartial">hello
 <button id="btn" onclick="callpartial()">Click</button>

 </div>


 <script type="text/javascript" >
   $(function callpartial() {
      $.ajax({
           url: '~/Controllers/Home/CallPartial',

          contentType: 'application/html; charset=utf-8',
         type: 'Get',
          dataType: 'html',
         success: function (status) {$("#divpartial").html("Welcome to partial view"); },
          error: function (status) {
              alert(status.Value);
          }
                               alert("Request Fails");
    });

});

最后我的部分观点是:

<body>
<div>hello this partial</div>
</body>

1 个答案:

答案 0 :(得分:0)

看起来您的路线很糟糕,通常在MVC中,您的路线中没有“控制器”这个词。试试这个:

url: '@Url.Action("CallPartial", "Home")',