ASP.MVC2中带Jquery的AJAX
我想通过Ajax获得一些东西并将其放入 我必须从控制器操作返回什么才能将其放入DIV?现在我有标准的ASP.MVC视图作为结果ASP.MVC2中带Jquery的AJAX,jquery,asp.net-mvc,ajax,Jquery,Asp.net Mvc,Ajax,我想通过Ajax获得一些东西并将其放入 我必须从控制器操作返回什么才能将其放入DIV?现在我有标准的ASP.MVC视图作为结果 public ActrionResult MyAction() { return View(); } 在javascript中,我有: $.get(<url to controler action>, null, function(data) { $(#result).html(data); }) $.get(,null,函数(数据){$(#结果)
public ActrionResult MyAction() {
return View();
}
在javascript中,我有:
$.get(<url to controler action>, null, function(data) { $(#result).html(data); })
$.get(,null,函数(数据){$(#结果).html(数据);})
与MyAction关联的典型操作,具有重新加载页面功能。但当我做$.get(…)时,我在“数据”中得到了整个页面(内容和母版页)。如果没有MsterPage,如何仅获取View()的一部分???您将要使用的
public ActrionResult MyAction() {
var stuff = new { id = 1, name = "test" }; //or whatever stuff you need in your page
return Json(stuff);
}
从ActionResult方法 作为json响应的替代方法,您可以返回html。您所需要做的就是过滤并从“data”变量中获取要附加的html
$.get(<url to controler action>, null, function(data) {
$('#result').html($(data).find('#partOfViewID').html());
});
$.get(,null,函数(数据){
$('#result').html($(数据).find('#partOfViewID').html());
});
您可以返回部分:
public ActrionResult MyAction()
{
return PartialView();
}
其中您有MyAction.ascx
partial,其中包含一些HTML片段:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<div>Hello</div>
这不是jquery/ajax的问题。您需要一个返回局部视图的操作。不是返回带有母版页的视图的视图 您可以使用此部件: $.get(,null, 功能(数据){ $(#result).html(数据);}) 但是,您的操作必须具有与其关联的局部视图,而不是具有母版页的常规视图 因此,采取新的行动。如果要向其中添加视图,请选中“局部视图”复选框。然后把你想重新加载的东西放在局部视图中
$('#result').load('/home/myaction');