【问题标题】:jQuery remove spaces on blur not workingjQuery删除模糊上的空格不起作用
【发布时间】:2011-02-18 11:31:30
【问题描述】:

我正在使用的替换功能在控制台中测试过,但它在模糊时根本不起作用。我该如何解决?

<script type="text/javascript">
    //Ensure spaces are not entered between tags
    jQuery(document).ready(function(){
        jQuery('#item_keywords').blur(function(){
            $(this).val().replace(/^\s+$/,"");
        });
    });
</script>

【问题讨论】:

  • 目前的结果是什么?它有什么作用吗?有没有用firebug/chrome的控制台查看有没有报错?
  • 请展示一个你想要达到的目标的例子,包括一些标记,如果它是一个正常的输入标签,给出的答案是正确的,如果这对你不起作用,那么其他的就是错了,人们猜不到……
  • 你能为此创建一个 jfiddle 吗? jsfiddle.net
  • @Val 我认为他最好自己学习它。你知道,就像整个“给一个人一条鱼;你已经喂饱了他今天。教一个人钓鱼;你已经喂了他一辈子。”事情:-)
  • @tim 首先你需要教他如何养活自己 :)

标签: javascript jquery onblur


【解决方案1】:

你已经删除了空格,但你没有将它们分配到任何地方:)

jQuery(document).ready(function(){
        jQuery('#item_keywords').unbind('blur').bind('blur',function(){
            $(this).val($(this).val().replace(/^\s+$/,""));
        });
    });

【讨论】:

  • 感谢快速响应 Val。不幸的是,这不起作用。正如我所说,我使用上面的解决方案在控制台中对其进行了测试,并且效果很好,但是我已经尝试过您的方法,因为它是有意义的,但是什么都没有:S
  • 在这种情况下,您可能必须绑定模糊功能,如果这是您对该输入唯一需要的东西,您应该使用 unbind 并检查更新的答案
  • 顺便说一句,你确定你已经包含了 jquery 核心文件吗?并检查是否有任何脚本因为有时我们认为它已正确加载:)
  • 我的错。它确实需要按照您的建议包装在 val() 中。但它也与模式不匹配。我删除了 ^ 和 $ (我认为这意味着从字符串的开头到结尾都匹配?)现在它可以工作了。
  • 好吧,正则表达式是我最弱的主题,但很好:)
【解决方案2】:

我正在使用:

        jQuery(document).ready(function(){
            jQuery('#business_email').unbind('blur').bind('blur',function(){
                var a = $(this).val().trim();
                $(this).val(a + '.');
                $(this).val(a);
            });
        });

【讨论】:

    【解决方案3】:

    你可以试试这个。

    $(document).ready(function(){
        $("#mytextbox").blur(function(){
            $(this).val($(this).val().replace(/\s/g,''));
            console.log($(this).val());
        });
    });
    

    【讨论】:

      猜你喜欢
      • 2023-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-13
      • 2011-08-13
      相关资源
      最近更新 更多