gpt4 book ai didi

c# - AJAX 调用 MVC 中的 OnChange 事件

转载 作者:太空狗 更新时间:2023-10-29 20:06:12 26 4
gpt4 key购买 nike

我必须对作为 View 一部分的下拉列表的 onchange 事件进行 AJAX 调用。在更改事件中,我需要调用数据库,进行一些计算以显示 UI,然后使用计算来填充图表控件。UI 显示按此顺序。图表下拉类别列表具有评分的子类别列表因此,我需要在更改事件中显示 div3 中的类别评级,使用评级分数来填充图表。在 .NET 中很容易完成,但如何在 MVC 中完成?我能想到的唯一选择是创建带有代码的用户控件,但这违背了使用 MVC 的目的。感谢您的帮助。

最佳答案

这里是您如何实现它的一般思路。

<script type="text/javascript">
// assuming you're using jQuery
$("#ddlAjax").change( function (event) {
$.ajax({
url: "Controller/GetPartialGraph/" + $(this).val(),
data: { id = $(this).val() /* add other additional parameters */ },
cache: false,
type: "POST",
dataType: "html",

success: function (data, textStatus, XMLHttpRequest) {
$("#divPartialView").html( data ); // HTML DOM replace
}
});
});
</script>

<select id="ddlAjax">
... list of options
</select>


<div id="divPartialView">
<!-- something like this in your ASP.NET View -->
<%= Html.RenderPartial("MyPartialView", Model) %>
</div>

这是您的 Controller 操作方法。

[HttpPost]
public PartialViewResult GetPartialGraph(int id /* drop down value */)
{
// do calculations whatever you need to do
// instantiate Model object
var model = myBusinessLogicService.DoCalculations(id);

return PartialView("MyPartialView", model);
}

我认为这就是您正在寻找的答案。

关于c# - AJAX 调用 MVC 中的 OnChange 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4078553/

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