无法在'HTMLInputElement'上执行'setSelectionRange'

时间:2014-04-11 12:19:03

标签: google-chrome webkit numbers

我在Chrome(版本33 =>)和其他webkit浏览器中的simle“数字”输入字段中出现以下错误

<input type="number" name="number">
  

无法在'HTMLInputElement'上执行'setSelectionRange':输入   element的类型('number')不支持选择。

我在FF&amp; amp; IE(10 =&gt;)并且运行良好

我在chrome项目中发现了以下问题: https://code.google.com/p/chromium/issues/detail?id=346270

任何想法?

谢谢你!

1 个答案:

答案 0 :(得分:2)

是的,这是一个webkit错误,试试这个解决方案:

Jsfiddle demo

代码:

    <div class="container">
        <form role="form">
          <div class="form-group">
            <label for="tel">tel</label>
              <input type="tel" class="form-control" id="tel" placeholder="tel"/>
          </div>
        </form>
    </div>

    <script>
    $("#tel").mask("(99) 999-9999");

    $("#tel").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 );
        }
    });
    </script>