javascript - 如何调用后操作响应,将选定的下拉项作为参数从 View 中的 javascript 传递

标签 javascript c# asp.net asp.net-mvc razor

如何在 asp.net、razor、mvc 内的 View 中调用后操作响应,将选定的下拉项作为来自 javascript 的参数传递

基本上,我确信您可以从下面的代码中看出,我正在尝试完成上述任务,但没有取得太大成功。我应该改变什么才能成功?谢谢

<script type="text/javascript">
$(function() {
    $("#mydropdown").change(function() {
        var selectedItem = $(this).val();
        $.ajax({
            url: '@Url.Action("DoStuff", "MainController")',
            type: "Post",
            data: { name: selectedItem },
            success: function () {
                alert('success');
            }
        });

    });
});

    [HttpPost]
    public ActionResult DoStuff(String Selecteditem)
    {
        CIModel CIModellList = CILHelper.ImportFunc(Selecteditem);
        return View(CIModellList);
    }

到目前为止,下拉列表更改时没有任何反应。尽管如果我删除 ajax 功能,并将其替换为警报。那么这种情况下的警报就会出现。

此时,actionresult 和 Controller 看起来好像在项目中不存在(红色),尽管它们确实存在并且按规定命名。

c# 似乎表明操作或 Controller 实际上都不存在,给出错误“无法解析操作”或“无法解析 Controller ”

最佳答案

<html>
<head>
    <meta charset="utf-8">

    <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
    <script src="//code.jquery.com/jquery-1.9.1.js"></script>
    <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>

</head>
<body>

    <select id="mydropdown">
        <option  value="a">a</option>
        <option  value="b">b</option>
        <option  value="c">c</option>
        <option  value="d">d</option>
    </select>



        <script type="text/javascript">
      $(function() {
          $("#mydropdown").change(function() {
              var selectedItem = $(this).val();
              $.ajax({
                  url: '@Url.Action("DoStuff", "MainController")',
                  type: "Post",
                  data: { name: selectedItem },
                  success: function () {
                      alert('success');
                  }
              });

          });
      });
    </script>

</body>
</html>






    [HttpPost]
    public ActionResult DoStuff(string name)
    {
    CIModel CIModellList = CILHelper.ImportFunc(name);
    return View(CIModellList);
    }

关于javascript - 如何调用后操作响应,将选定的下拉项作为参数从 View 中的 javascript 传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26465915/

相关文章:

c# - 无法在按钮单击 MVC、C# 上获取选定的网格行值

c# - 项目类型不允许添加新的 "Web User Control"

javascript - 获取错误 - 请求正文中缺少\"data\"有效负载

c# - 监视 ADO.NET 连接打开时间

javascript - 如何在 KnockoutJS 中的 ajax 调用后更新数组中的特定元素

c# - .NET 中的强名称程序集是否确保代码未被篡改?

c# - 如何处理 Oculus Gear VR 触摸板上的滑动以避免点击事件

jquery - ASP.NET MVC3 : Datetimepicker wont work

javascript - 查看事件未在创建的元素上触发?

javascript - 从浏览器运行 cmd - 通过 JS