我确信有一种简单的方法可以做到这一点,但我无法在任何地方找到明确的答案。
我的应用程序中有一个页面“索引”。索引包含一些图表和各种其他数据。在页面顶部,我有一个HTML下拉菜单。当用户从下拉菜单中选择一个值时,它会影响数据。所需的行为是页面刷新更新的图形。
我可以使用
获取下拉菜单的值 <select id="Menu" onchange="loadGraphs()">
然后使用以下命令访问脚本中的值:
var value = $('#Menu').val();
但是后来我无法调用我的控制器刷新页面。我在控制器中有一个接受值的方法,处理数据并返回视图。如何用值调用它并重新加载页面?
答案 0 :(得分:1)
你不需要重新加载页面,如果你想要的只是刷新数据然后使用一个小的角度应用程序,例如能够更新页面而不刷新任何东西。
您需要做的是向控制器发出一个http请求GET或POST,具体取决于您编写控制器的方式,使其返回JsonResult,然后使用结果填充新数据。
控制器只能返回数据,而不仅仅是视图。当它是一个视图时它是一个ActionResult,但是JsonResult就是这样,一些json的东西。
更好的方法是添加一个WebApi2项目,然后放置所有与数据相关的控制器。这取决于你的项目有多大。如果你只有一两件事你需要打电话,那就太过分了。然而,优点是您可以从多个客户端调用相同的API,而不仅仅是Web,例如移动客户端。