Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MVC Dropdownlist OnChange事件的Javascript代码_Javascript_C#_Jquery_Asp.net Mvc_Html Select - Fatal编程技术网

MVC Dropdownlist OnChange事件的Javascript代码

MVC Dropdownlist OnChange事件的Javascript代码,javascript,c#,jquery,asp.net-mvc,html-select,Javascript,C#,Jquery,Asp.net Mvc,Html Select,我在MVC项目中捕获Dropdownlist的更改事件时遇到问题。我的目标是使用第一个下拉列表填充第二个下拉列表。第一步是抓住变化事件,尽管经历了两天永无止境的考验,但我似乎无法做到这一点。以下是我尝试过的几种无效的方法 这是包含下拉列表的表单。第二个下拉列表位于局部视图中 下面是我的javascript代码试用版1 这是试用版2 我尝试过许多其他的迭代,但都没有成功。一定要使用试用版2。有几件事你可以试试。首先要检查。如果查看“渲染”下拉列表。id=扫描仪吗?谢谢,马特。是,id和名称设置为“

我在MVC项目中捕获Dropdownlist的更改事件时遇到问题。我的目标是使用第一个下拉列表填充第二个下拉列表。第一步是抓住变化事件,尽管经历了两天永无止境的考验,但我似乎无法做到这一点。以下是我尝试过的几种无效的方法

这是包含下拉列表的表单。第二个下拉列表位于局部视图中

下面是我的javascript代码试用版1

这是试用版2


我尝试过许多其他的迭代,但都没有成功。

一定要使用试用版2。有几件事你可以试试。首先要检查。如果查看“渲染”下拉列表。id=扫描仪吗?谢谢,马特。是,id和名称设置为“扫描仪”。抄袭来源:完美。如果这是一个计时问题,则在加载页面时,您需要将事件绑定到文档。尝试将选择器更改为$document。在“更改”、“扫描仪”功能上{谢谢。我会试试。有什么方法可以调试和确定javascript代码是否被调用而不起作用吗?每个浏览器都有一个工具。我更喜欢firefox上的firebug。一旦你安装了附加组件。单击f12打开开发者控制台。你可以在脚本中设置断点,看看它是否被击中
<form id="TheForm" method="get">
<p>
    @Html.DropDownList("scanners", (SelectList)ViewBag.scanners, "---Select A Scanner---")
</p>

<div id="results">
    @{Html.RenderAction("ProtocolDDL", "CTProtocols");}
</div>
<script type="text/javascript">
$(function () {
    $("#scanners").change(function () {
        $("#TheForm").submit();
    });
});
</script>
<script type="text/javascript">
    $(function () {
        $("#scanners").change(function () {
            var selection = $("#scanners").val(); //get the selection made in the dropdownlist
            $('#results').load("/CTProtocols/ProtocolReview/" + selection); //return value of the url /locations/sites which is the action method to invoke.
        })
    });
</script>