【发布时间】:2018-01-30 15:41:57
【问题描述】:
实际上,每当我进行搜索时,我都会尝试更新部分视图内容。所以我使用ajax调用来实现这一点。因此,从控制器到部分视图模型的值是正确的(新数据),但它没有绑定到视图(显示现有数据)。
主视图
<div class="tab-pane active" id="partialviewpage">
@{
Html.RenderPartial("_Details", Model);
}
</div>
部分视图(_详细信息)
foreach (var item in Model.AllAds)
{
//div contents
}
Ajax 调用
var text = 'test';
$.ajax({
url: '@Url.Action("Subcategory", "Category")',
type: 'GET',
dataType: 'JSON',
data: { item: text },
success: function (partialView) {
$('#partialviewpage').html(partialView);
},
error: function (xhr, ajaxOptions, thrownError) {
}
});
类别控制器
public ActionResult Subcategory(string item)
{
//Logic calling Api content goes here
var SearchresponseData = responseMessage.Content.ReadAsStringAsync().Result;
JavaScriptSerializer JssSearch = new JavaScriptSerializer();
List<Result> Jsonresult = (List<Result>)JssSearch.Deserialize(SearchresponseData, typeof(List<Result>));
var Model= new ModelName();
{
Model.AllAds = new List<Result>();
Model.AllAds = Jsonresult;
}
return PartialView("_Details", Model);
}
那么,我的代码有什么问题以及如何修改代码以获取新的模型值。任何帮助表示赞赏。提前致谢。
【问题讨论】:
-
我认为
success: function (PartialView) {是一个错字,它真的是partialView(小写p)? -
您是否在控制台中检查了任何 js 错误,您是否在网络选项卡上检查数据是否返回正确,您是否检查数据是否返回正确,而不是选择器等任何绑定问题。
-
而且你的控制器方法中的代码甚至无法编译!
-
网络标签@programtreasures没有错误
-
@Muzz 你有没有在网络标签中检查响应数据是否更新?
标签: asp.net-mvc asp.net-mvc-4 asp.net-mvc-ajax