传递动态选定的下拉列表ID

时间:2014-05-10 05:49:06

标签: javascript jquery

我在javascript中有ddl_SelectedIndexchanged函数,它接受一个下拉列表的参数,就像vb.net中的以下代码一样

Private Sub ddl_SelectedIndexchanged(drop as dropdownlist)
   'code
End sub

我的javascript代码与上面的相同

function ddl_SelectedIndexchanged(drop)
{
   //code
}

现在我打算在document.ready上调用该函数 但在我的页面中我有5个下拉列表,请考虑ddl1,ddl2,ddl3,ddl4,ddl5

如果选择了ddl1,则会有一个单独的代码。 如果选择了ddl2,它也有一个单独的代码。 但如果两者都不会被选中,那么任何其他人都可以访问ddl_selectedIndexchanged()函数。 由于“任何其他”意味着动态选择我不知道如何传递(ddl)参数如下

if(ddl1.selectedIndex == 0)
    ddl_selectedIndexChanged(ddl2);
else if(ddl2.selectedIndex == 0)
    ddl_selectedIndexChanged(ddl1);
else
    ddl_selectedIndexChanged(`dynamic selection of ddl3,ddl4,ddl5`);

1 个答案:

答案 0 :(得分:2)

<select class="ddcommon" name="dd1">
    <!-- Your options -->
</select>

<select class="ddcommon" name="dd2">
    <!-- Your options -->
</select>

<select class="ddcommon" name="dd3">
    <!-- Your options -->
</select>


<script type="text/javascript">
    // Code requires jquery
    $(function(){

        $('.ddcommon').change(function(e) {

            element_name  = $(this).attr('name');
            element_value = $(this).val();

            switch(element_name) { // start switch

                case 'dd1':
                    // your code
                    break;

                case 'dd2':
                    // your code
                    break;

                case 'dd3':
                    // your code
                    break;                                  

                // .... so on cases

                    } // endswitch
            });
    });
</script>