我刚开始在ASP.NET MVC4中使用部分视图。 单击提交按钮时,它工作正常,部分视图正确加载。 我必须使用DropDownLists和日期字段,当所选索引或值更改时,必须发出ajax帖子。 (还有一些其他下拉列表,这些值基于所选日期和其他选定值)
这是其中一个领域:
@Html.EditorFor(model => model.Overtime.StartDate)
这就是我解决 AutoPostBack 的方式。我让自己取代了html内容。但我认为即使没有从提交按钮触发ajax帖子,也可以通过框架进行。
<script type="text/javascript">
$(document).ready(function () {
$("#Overtime_StartDate").datepicker({ dateFormat: 'yy/mm/dd' });
$("#Overtime_StartDate").change(function () {
var postData = $("#PostData").serialize();
$.post("ManageOvertimes", postData, function (data) {
$('#Fields').html(data);
});
});
});
</script>
包含部分视图的页面:
<div id="Fields">
@Html.Partial("IndexPartial", Model)
</div>
所以问题是:ASP.NET MVC4中是否有针对此的标准解决方案?
答案 0 :(得分:1)
我不确定我是否理解你。但是,如果您想在PartialView
中加载div
作为$post
函数的回发,则可以使用函数load()
:
$.post("ManageOvertimes", postData, function () {
$('#Fields').Load('@Url.Action("Actionname", "Controllername")')
});