Jquery 当项目的DropDownList更改时执行脚本ASP.Net MVC
我有一个这样的下拉列表:Jquery 当项目的DropDownList更改时执行脚本ASP.Net MVC,jquery,asp.net-mvc,dropdownlistfor,Jquery,Asp.net Mvc,Dropdownlistfor,我有一个这样的下拉列表: <div class="drop-down-list"> <%: Html.DropDownListFor(model => model.StageId, ViewBag.StagesList as SelectList,new { @id="stageOne"})%> <%: Html.ValidationMessageFor(model => model.StageId) %>
<div class="drop-down-list">
<%: Html.DropDownListFor(model => model.StageId, ViewBag.StagesList as SelectList,new { @id="stageOne"})%>
<%: Html.ValidationMessageFor(model => model.StageId) %>
</div>
model.StageId,ViewBag.stageList作为SelectList,新建{@id=“stageOne”})%>
model.StageId)%>
当所选项目发生更改时,我需要触发下面的类似代码以转到控制器,填充一个viewbag并填充另一个DropDownList for。实际上,我想在asp.NETMVC中构建两个级联DropDownListFor
<script>
$('#stageOne').change(function () {
$.ajax({
url: '/Shop/ChangeStageTwo/',
data: { item: $("#drop-down-list").sortable('toString') },
type: 'post',
traditional: true
});
});
</script>
$('#stageOne')。更改(函数(){
$.ajax({
url:“/Shop/changestagewo/”,
数据:{item:$(“#下拉列表”).sortable('toString')},
键入:“post”,
传统的:真的
});
});
但是当用户更改第一个DropDownListFor时,什么也不会发生。有什么问题吗??非常感谢。正如Michael_B所说,我将代码更改为此,问题解决了:
$(function () {
$('#stageOne').change(function () {
$.ajax({
url: '/Shop/ChangeStageTwo/',
data: { item: $("#drop-down-list").sortable('toString') },
type: 'post',
traditional: true
});
});
});
当你说什么都没发生,你是说功能没有被触发?在函数中放入警报,查看它是否运行。可能url路径不正确?是的,我的意思是该函数未被触发。我试过警觉测试。但是函数没有被触发。如果将jquery包装在
$(function(){..add.change function here..})中会发生什么情况代码>?控制台有什么错误吗?谢谢Michael。解决了的!