gpt4 book ai didi

javascript - MVC 更新部分 View onchange 下拉列表

转载 作者:行者123 更新时间:2023-11-29 15:39:17 26 4
gpt4 key购买 nike

我想在用户更改下拉列表的当前值时更新部分 View 。

在我的 onchange 提交中,部分 View 不会加载到 div 中,而是会替换整个页面。我该如何解决?

查看:

@using (Ajax.BeginForm("GetEnvironment", new RouteValueDictionary { { "Environment", Model.Environnements } }, new AjaxOptions() { UpdateTargetId = "ExportDiv" }))
{
@Html.DropDownListForEnum(x => x.Environnements, new { onchange = "this.form.submit();" })
}

<div id="ExportDiv">
@Html.Partial("Export")
</div>

Controller :

    public PartialViewResult GetEnvironment(ExampleDto model)
{
return PartialView("Export", model);
}

导出.cshtml

最佳答案

看起来像triggering submit on the form causes whole page to be posted而不是 AJAX 行为。试试这个:

@using (Ajax.BeginForm("GetEnvironment", new RouteValueDictionary { { "Environment", Model.Environnements } }, new AjaxOptions() { UpdateTargetId = "ExportDiv" },new {id = "ajaxForm"))
{
@Html.DropDownListForEnum(x => x.Environnements, new { onchange = "submitAjaxForm()" })
}

<div id="ExportDiv">
@Html.Partial("Export")
</div>

<script type="text/javascript">
$('form#ajaxForm').submit(function(event) {
eval($(this).attr('onsubmit')); return false;
});

window.submitAjaxForm = function(){
$('form#ajaxForm').submit();
}
</script>

如果您正在使用它,您需要将脚本包含在它们自己的部分中。

关于javascript - MVC 更新部分 View onchange 下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22374629/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com