jQuery的开关案例

至关重要地

在这里您可以找到我的jQuery代码:

function ledgerSave(){
            var option = $('#ledgerType').val();
            var ledger = $('#ledgerName').val();

            switch( option ) {
                case ( option == 0 ) :
                    alert( 'Select Your Ledger Type' );
                    break;

                case ( option == 1 ) :
                    /* some code */
                break;

                case ( option == 2 ) :
                    /* some code */
                break;

                case ( option == 3 ) :
                    /* some code */
                break;
            }
        }

在变量“选项”中,我得到的选择值为0、1、2和3。因此,当变量选项中的值为0时,我会发出警报,但它不会显示警报。我不明白实际的问题在哪里。需要帮忙 !

我也尝试过这个:

function ledgerSave(){
            var option = $('#ledgerType').val();
            var ledger = $('#ledgerName').val();

            switch( option ) {
                case 0:
                    alert( 'Select Your Ledger Type' );
                    break;

                case 1:
                    /* some code */
                break;

                case 2:
                    /* some code */
                break;

                case 3:
                    /* some code */
                break;
            }
        }

但是不好

阿伦·约翰尼(Arun P Johny)

问题是选项是一个字符串,如在开关中您有数字。因此,您应该将选项转换为数字,可以使用一元运算符或使用parseInt()。

程序首先查找case子句,其表达式的计算结果与输入表达式相同(使用严格比较,===),然后将控制权转移到该子句,执行关联的语句。

var option = +$('#ledgerType').val();//or parseInt($('#ledgerType').val(), 10)

注意:您仍然必须使用第二个版本的switch ... case

function ledgerSave() {
    var option = +$('#ledgerType').val();
    var ledger = $('#ledgerName').val();

    switch (option) {
        case 0:
            alert('Select Your Ledger Type');
            break;

        case 1:
            /* some code */
            break;

        case 2:
            /* some code */
            break;

        case 3:
            /* some code */
            break;
    }
}

如下所述,另一个选择是使用做字符串比较

function ledgerSave() {
    var option = $('#ledgerType').val();
    var ledger = $('#ledgerName').val();

    switch (option) {
        case '0':
            alert('Select Your Ledger Type');
            break;

        case '1':
            /* some code */
            break;

        case '2':
            /* some code */
            break;

        case '3':
            /* some code */
            break;
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章