我在使用jQuery和Masked Input Plugin屏蔽电话输入时遇到问题。

有两种可能的格式:

  • (XX)XXXX-XXXX
  • (XX)XXXXX-XXXX

  • 有没有掩盖它接受两种情况的方法?

    编辑:

    我试过了:
    $("#phone").mask("(99) 9999-9999");
    $("#telf1").mask("(99) 9999*-9999");
    $("#telf1").mask("(99) 9999?-9999");
    

    但这没有我想要的。

    最接近的是(xx)x​​xxx-xxxxx。

    我想输入第10个数字时得到(xx)x​​xxx-xxxx,而当我键入第11个数字时得到(xx)x​​xxxx-xxxx。有可能吗?

    最佳答案

    试试这个-http://jsfiddle.net/dKRGE/3/

    $("#phone").mask("(99) 9999?9-9999");
    
    $("#phone").on("blur", function() {
        var last = $(this).val().substr( $(this).val().indexOf("-") + 1 );
    
        if( last.length == 3 ) {
            var move = $(this).val().substr( $(this).val().indexOf("-") - 1, 1 );
            var lastfour = move + last;
            var first = $(this).val().substr( 0, 9 );
    
            $(this).val( first + '-' + lastfour );
        }
    });
    

    关于javascript - 带有jQuery和屏蔽输入插件的电话屏蔽,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11633726/

    10-10 22:22