使用jQuery,HTML输入字段值设置器在Chrome和Safari中无法正常工作

舒夫罗

我正在尝试使用jquery在keyup事件上设置html输入字段值。

<input style="width: 45%;" type="text" name="user_phone" value="" placeholder="Your phone number" />

首先,我尝试使用.val()setter这样。

http://jsfiddle.net/6xwzy81k/3/

$(document).ready(function(){
  $('input[name=user_phone]').keyup(function() {
    var number = $('input[name=user_phone]').val();
    if (!number.contains('(') && !number.contains(')') && number.length === 2) {            
        $('input[name=user_phone]').val('(' + number + ')');
    } else if (number.contains('(') && !number.contains(')') && number.length === 3) {
        $(this).val(number + ')');
    } else if (!number.contains('(') && number.contains(')') && number.length === 3) {
        $(this).val('(' + number);
    }
  });
});

这在Firefox中工作正常,但在Chrome和Safari中却没有用。然后,如在其他一些问题中所建议的那样,我使用.prop()而不是.val()尝试了这种方法

http://jsfiddle.net/6xwzy81k/2/

$(document).ready(function(){
  $('input[name=user_phone]').keyup(function() {
    var number = $('input[name=user_phone]').val();
    if (!number.contains('(') && !number.contains(')') && number.length === 2) {            
        $('input[name=user_phone]').prop('value','(' + number + ')');
    } else if (number.contains('(') && !number.contains(')') && number.length === 3) {
        $(this).prop('value', number + ')');
    } else if (!number.contains('(') && number.contains(')') && number.length === 3) {
        $(this).prop('value', '(' + number);
    }
  });
});

发生了同样的事情,它在Firefox中按预期工作,但在Safari或chrome中却没有。

古鲁帕萨德·饶

它给出number.contains的不是控制台中的功能。因此,我建议您使用$.contains以下方法,效果很好!!

此处演示

$(document).ready(function(){
    $('input[name=user_phone]').keyup(function() {
        var number = $('input[name=user_phone]').val();
        if (!$.contains(number,'(') && !$.contains(number,')') && number.length === 2) {            
            $('input[name=user_phone]').val('(' + number + ')');
        } else if ($.contains(number,'(') && !$.contains(number,')') && number.length === 3) {
            $(this).val(number + ')');
        } else if (!$.contains(number,'(') && $.contains(number,')') && number.length === 3) {
            $(this).val('(' + number);
        }
    });
});

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用jQuery,HTML输入字段值设置器在Chrome和Safari中无法正常工作

来自分类Dev

方向rtl css for输入在Safari和Chrome中无法正常工作

来自分类Dev

HTML符号代码在输入字段中无法正常工作

来自分类常见问题

使用JavaScript将html表数据导出到Excel / jQuery在chrome浏览器中无法正常工作

来自分类Dev

在浏览器上,Safari的“私人浏览”中的sessionStorage与Chrome的“隐身模式”和Firefox的“私人窗口”无法正常工作吗?

来自分类Dev

Safari和Chrome中的密码输入字段

来自分类Dev

在 Firefox 中输入密钥未提交数据..在 IE、Chrome 和 safari 中工作正常

来自分类Dev

jQuery one()在Chrome中无法正常工作

来自分类Dev

jQuery one()在chrome中无法正常工作

来自分类Dev

输入字段值的相等比较无法正常工作

来自分类Dev

选项列表在Safari,Mozila,Chrome中无法正常工作

来自分类Dev

代码在 Safari 和响应式浏览器中无法正常工作

来自分类Dev

jQuery动画无法在Safari和Chrome中正常运行

来自分类Dev

在Safari浏览器中,scrollIntoView无法正常工作

来自分类Dev

jQuery无法设置HTML输入控件的值

来自分类Dev

CSS Margin在IE和Safari中无法正常工作

来自分类Dev

jQuery API:.ajaxStart()在Chrome浏览器中似乎无法正常工作

来自分类Dev

无法设置输入字段的值

来自分类Dev

表单和输入字段无法使用.append()正常运行

来自分类Dev

Chrome浏览器中的自动宽度无法正常工作

来自分类Dev

使用jQuery .val()设置输入字段值时,引导程序验证器不起作用

来自分类Dev

jQuery在Firefox上无法正常运行,并且在Safari中根本无法正常工作

来自分类Dev

Chrome-专注于输入无法正常工作

来自分类Dev

在JavaScript中设置Cookie(其中的值包含=)无法正常工作

来自分类Dev

Colspan无法使用html中的输入字段

来自分类Dev

使用javascript登录-设置元素值无法正常工作

来自分类Dev

具有输入文本标签的border-radius属性在Chrome浏览器中无法正常工作

来自分类Dev

Animate({right:0})在Chrome和Opera中无法正常工作

来自分类Dev

Animate({right:0})在Chrome和Opera中无法正常工作

Related 相关文章

  1. 1

    使用jQuery,HTML输入字段值设置器在Chrome和Safari中无法正常工作

  2. 2

    方向rtl css for输入在Safari和Chrome中无法正常工作

  3. 3

    HTML符号代码在输入字段中无法正常工作

  4. 4

    使用JavaScript将html表数据导出到Excel / jQuery在chrome浏览器中无法正常工作

  5. 5

    在浏览器上,Safari的“私人浏览”中的sessionStorage与Chrome的“隐身模式”和Firefox的“私人窗口”无法正常工作吗?

  6. 6

    Safari和Chrome中的密码输入字段

  7. 7

    在 Firefox 中输入密钥未提交数据..在 IE、Chrome 和 safari 中工作正常

  8. 8

    jQuery one()在Chrome中无法正常工作

  9. 9

    jQuery one()在chrome中无法正常工作

  10. 10

    输入字段值的相等比较无法正常工作

  11. 11

    选项列表在Safari,Mozila,Chrome中无法正常工作

  12. 12

    代码在 Safari 和响应式浏览器中无法正常工作

  13. 13

    jQuery动画无法在Safari和Chrome中正常运行

  14. 14

    在Safari浏览器中,scrollIntoView无法正常工作

  15. 15

    jQuery无法设置HTML输入控件的值

  16. 16

    CSS Margin在IE和Safari中无法正常工作

  17. 17

    jQuery API:.ajaxStart()在Chrome浏览器中似乎无法正常工作

  18. 18

    无法设置输入字段的值

  19. 19

    表单和输入字段无法使用.append()正常运行

  20. 20

    Chrome浏览器中的自动宽度无法正常工作

  21. 21

    使用jQuery .val()设置输入字段值时,引导程序验证器不起作用

  22. 22

    jQuery在Firefox上无法正常运行,并且在Safari中根本无法正常工作

  23. 23

    Chrome-专注于输入无法正常工作

  24. 24

    在JavaScript中设置Cookie(其中的值包含=)无法正常工作

  25. 25

    Colspan无法使用html中的输入字段

  26. 26

    使用javascript登录-设置元素值无法正常工作

  27. 27

    具有输入文本标签的border-radius属性在Chrome浏览器中无法正常工作

  28. 28

    Animate({right:0})在Chrome和Opera中无法正常工作

  29. 29

    Animate({right:0})在Chrome和Opera中无法正常工作

热门标签

归档