Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.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
C# MVC控件和jQuery函数_C#_Jquery_Asp.net Mvc_Razor - Fatal编程技术网

C# MVC控件和jQuery函数

C# MVC控件和jQuery函数,c#,jquery,asp.net-mvc,razor,C#,Jquery,Asp.net Mvc,Razor,我有一个视图,它在ForEach循环中呈现多个歌曲类别下拉列表 @foreach (var itemCategory in Model) { //Generate unique ids for the category dropdown and assign them. @{ string sCategory = "category" + i; } @Html.DropDownListFor(itemCategory.categoryName , itemCatego

我有一个视图,它在ForEach循环中呈现多个歌曲类别下拉列表

@foreach (var itemCategory in Model)
{
  //Generate unique ids for the category dropdown and assign them.
 @{
      string sCategory = "category" + i;   
 }
 @Html.DropDownListFor(itemCategory.categoryName , itemCategory.songslist, new {@Id=sCategory})
 }
示例:上述ID将是类别0到类别4

我正在尝试使用change event从每个类别下拉列表中查找选择的单个值。但是下面的脚本不起作用

JavaScript/jQuery:

  <script type="text/javascript">

$(function () {

        var totalCategories = 5            
        for (i = 0; i < totalCategories ; i++) {

                 $('#category' + i)
                   .change(function () {
                       var str = "";
                       str = $('#category' + i).children('option:selected').val();
                       alert(str);
                   })
                   .change();

        }
});

</script>

$(函数(){
var totalCategories=5
对于(i=0;i
当我只有一个下拉列表时,这是可行的,但如何使它与动态创建的多个下拉列表一起工作


请提供任何帮助或建议。

您的选择器可能不太具体,您可以在不知道其ID的情况下为所有下拉列表指定相同的代码,如:

$( "select" )
  .change(function () {
    var str = "";
    $(this).find( "option:selected" ).each(function() {
      str += $( this ).text() + " ";
    });
    alert(str);
  }) ;

编辑:


查看此提琴:

foreach循环中的“i”是什么?检查下拉列表中是否有我使用的html源中的id类别0、类别1等“i”将更改事件调用到特定的下拉列表。我确实在HTML中看到了正确的id。我先尝试了这段代码,但它也从其他下拉列表中选择了选定的值。@user3479754我已更新了代码,并包含了一个可用的小提琴。嗨,Shenku:您的解决方案对我来说非常有效。我所做的一个小改动是将e传递到函数中,并使用e.target.name获取select下拉列表的名称。谢谢你的帮助。