我正在研究MVC 5应用程序,我想使用jQuery ajax函数在另一个部分视图中使用模型数据渲染partialView。当调用javaScript函数时,它假设将所选元素的ID发送回工作正常的控制器,并返回带有部分视图以及不能使用以下代码的模型
<td>
<a href="#" class="SearchUser_Icon Hyperlink_Text" onclick="load_getUserListByGroupID(this)" id=@item.GroupID></a>
</td>
function load_getUserListByGroupID(element)
{
var selectedGroupID = element.id;
alert(selectedGroupID);
$.ajax({
type: "POST",
url: "/UserManagement/SearchUsersByGroupID/",
dataType: "json",
data: { 'GroupID': selectedGroupID },
success: function (viewHTML) {
alert("success");
$("#userContentBlock").html(viewHTML);
},
error: function (errorData) { onError(errorData); }
}).done(function (result) {
alert("done!");
});
}
<div id="userContentBlock"></div>
[HttpPost]
public ActionResult SearchUsersByGroupID(string GroupID)
{
int intID = Convert.ToInt32(GroupID);
var UsersListByGroupID = _userServices.GetUsersByGroupID(intID);
return PartialView("GetUsersListByGroup_Partial", UsersListByGroupID );
}
答案 0 :(得分:1)
您正在返回HTML,同时期望在ajax调用中使用JSON。只需从设置中删除dataType: "json"
,一切都应按预期工作。
您期望从服务器返回的数据类型。如果没有指定,jQuery将尝试根据响应的MIME类型推断它。