我正在尝试使用ajax方法加载partialview。因为我过去曾尝试过,但我不知道为什么这次没有加载内容和数据。我想知道我哪里错了。我怎么能纠正这个?
这是我的视图,在其名为“Add_Group”的div中有部分视图。
@(Html.Kendo().Window()
.Name("AddEditGroupWindow")
.Title("Edit Group")
.Content(@<text><div id="Add_Group" style="display:none; width:100%;">
@Html.Partial("~/Areas/Admin/Views/UserGroups/_AddGroupPartial.cshtml");
</div> </text>)
.Visible(false).Width(1000).Height(300))
我使用post获取数据后如下所示,我正在尝试加载该patial视图 下面:
$.post("/UserGroups/getGroupDetail", { "groupId": id }, function (response) {
$("#Add_Group").html(response.Data);
$("#AddEditGroupWindow").data("kendoWindow").open();
$("#Add_Group").show();
});
控制器中的如下所示:
public ActionResult GetGroupDetail(string groupId)
{
var data = string.Empty;
UserGroupRoleModel objmodel = new UserGroupRoleModel();
var groupEntity = this._userGroupServices.GetGroupDetail(Convert.ToInt32(groupId));
return this.Json(new { Data = groupEntity });
}
答案 0 :(得分:0)
您通过post方法返回json对象,而不是html,因此当您调用
时 $("#Add_Group").html(response.Data);
它什么都不显示,因为Data
是json而不是html
您的GetGroupDetail
需要返回html才能显示。
根据您的代码,我假设您从GetGroupDetail
返回的是部分视图的模型(~/Areas/Admin/Views/UserGroups/_AddGroupPartial.cshtml
),将您的GetGroupDetail
更改为返回部分视图< / p>
public ActionResult GetGroupDetail(string groupId)
{
var data = string.Empty;
UserGroupRoleModel objmodel = new UserGroupRoleModel();
var groupEntity = this._userGroupServices.GetGroupDetail(Convert.ToInt32(groupId));
return PartialView("~/Areas/Admin/Views/UserGroups/_AddGroupPartial.cshtml", roupEntity);
}