C# MVC控件和jQuery函数
我有一个视图,它在ForEach循环中呈现多个歌曲类别下拉列表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 (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下拉列表的名称。谢谢你的帮助。