从jQuery AJAX get操作返回视图
Returning view from jQuery AJAX get operation
我正试图让一个异步jQuery访问一个MVC操作来返回一个视图。出于某种原因,尽管它访问操作,但不会渲染视图。
这是jQuery:
function showArchive(url) {
var moreRecentThanDate = $("#chooseDate").val();
$.get(url, { moreRecentThan: moreRecentThanDate });
}
这就是行动:
[HttpGet]
public ActionResult ShowArchive(DateTime moreRecentThan)
{
List<NewIndexViewModel> model = Service.GetArchives(moreRecentThan);
ViewBag.IsArchive = true;
return View("Index", model);
}
PS:我从一个特殊的模式弹出窗口调用这个jQuery;
您应该使用如下语法将结果附加到某个位置:
$.get(url, { moreRecentThan: moreRecentThanDate }).done(function(data) {
$('.result').html(data);
)};
如果有疑问,请查看jQuery文档,get(),我相信倒数第二个例子就是你想要的。。
$.get(url, { moreRecentThan: moreRecentThanDate })
.done(function(data) {
$('#myElem').append(data);
// or $('#myElem').html(data);
});
$.get( url, { moreRecentThan: moreRecentThanDate }, function(data) {
//回调或响应$('#details_Div').replaceWith(data);
});
其中用户控制器具有一个名为details的动作,该动作执行:
public ActionResult Details( int id )
{
//create a model
return PartialView( "UserDetails", model );
}
PartialView
在这里很重要。
这是假设您的局部视图是一个id为detailsDiv的容器,因此您只需将整个视图替换为调用结果的内容。
UserDetails部分视图http://evolpin.wordpress.com/2011/04/26/asp-net-mvc-partial-view-and-ajax-real-world-example/
<div id="details_Div">
<HTML will be replaced once the ajax is completed>
</div>
相关文章:
- 如何在Jquery中发布后将值从视图返回到控制器
- 无法在mvc视图中使用ajax调用获取操作返回的模型对象列表
- float's未返回到移动视图结束后的位置
- 从Nodejs中的函数返回数组,并将其发送到ejs视图
- 当视图在AngularJS中返回时,我如何获得异步服务调用来更新视图
- 在主干视图中的每个方法之后是否需要“返回此内容”
- 可以'在使用Javascript/AjaxMVC之后,不会返回到任何视图
- 如何使用jsonp调用返回的数据在Durandal中呈现视图
- 如何在视图中显示json返回的linq列表
- Laravel 5.2 - 在 ajax 请求后从控制器返回视图
- 如何使用 Ajax 调用在 MVC 中的返回视图方法中返回 JSON 数据
- 从jQuery AJAX get操作返回视图
- jquery post后从控制器返回视图
- SQL Server数据透视表返回视图(AngularJS)
- 返回视图()时出现内部500错误
- ASP.Net MVC处理控制器事件的最佳实践,该事件不返回视图,但在完成时弹出一个窗口
- asp.net mvc 3 -通过Javascript将值传递给控制器返回视图
- Ajax 的 Laravel 5 返回视图 - 我的方法很笨拙还是很好
- 在控制器中使用一个警报脚本后返回视图
- 当重载一个返回视图的控制器时,我该如何基于ViewBag属性加载不同的内容?