在div MVC中加载局部视图
我点击它的MVC视图上有一个按钮,它应该在’div’中添加一个局部视图,通过调用一个以对象作为参数的动作
我尝试过这样的事情:
$('#buttonId').onclick(function(){ $('#divid').load(@Html.Action("ActionName","ControllerName",new{parameterName = objectToPass})) });
但它加载了页面加载本身的actionresult / partial视图而不是单击按钮
任何的想法?
尝试使用
@Url.Action
代替
@Html.Action
或者您可以使用ajax,例如:
$('#buttonId').click( function() { $.ajax({ type: 'POST', url: '@Url.Content("~/ControllerName/ActionName")', data: objectToPass, success: function (data) { $('#divid').innerHTML = data; } }); }
在div MVC 4中加载局部视图
最近我想在Div中加载Partal View,经过大量研发后,它对我来说很有用
$.ajax({ type: 'POST', url: '@Url.Content("~/ControllerName/ActionName")', data: { title: title }, success: function(result) { $('#divid').innerHTML = result; }
});
And In Partal View Action Controller Code public PartialViewResult ShowCategoryForm(string title) { Model model = new Model(); model.Title = title; return PartialView("~/Views/ControllerName/PartalView.cshtml", model); }
load需要一个字符串,如果你看一下你生成的源代码,就会生成一个变量路径:
$('#buttonId').click(function(){ $('#divid').load(yoururl/); });
但你想要的是:
$('#buttonId').click(function(){ $('#divid').load("yoururl/"); });
代码应如下所示:
$('#buttonId').click(function(){ $('#divid').load('@Html.Action("ActionName","ControllerName",new{parameterName = objectToPass})'); });
但正如我所看到的那样,负载应该正常工作,直到你点击#buttonId