【问题标题】:changes in jquery 1.4.2 breaking the code?jquery 1.4.2 中的更改破坏了代码?
【发布时间】:2010-11-09 04:23:46
【问题描述】:

我在使用 jquery 1.3 的页面上有此代码,但现在在 jquery 1.4.2 中它因语法错误/无法识别的表达式而中断:

$(文档).ready(函数(){ $("span[@name^=charge]").click(function(){ $("#" + $(this).attr("name")).show(); $(this).hide(); }); });

我该如何解决这个问题?

【问题讨论】:

  • 不应该是$("span[name^=\"charge\"]")。在我看来,您正在尝试使用 xpath 语法。

标签: jquery


【解决方案1】:

@name 已被弃用 - 现在只使用名称

看到这个帖子: http://www.mail-archive.com/jquery-en@googlegroups.com/msg58250.html

【讨论】:

    【解决方案2】:

    我唯一看到的是在定义我的属性之前我通常不使用“@”,并且我倾向于将我的属性值选择器放在单引号中。试试这个:

    $(document).ready(function(){
        $("span[name^='charge']").click(function(){
            $("#" + $(this).attr("name")).show();
            $(this).hide();
        });
    });
    

    【讨论】:

    • 我实际上用引号做相反的事情,我对字符串使用单引号很大程度上是出于 php 的习惯,然后我可以在其中使用双引号,而不用担心字符转义或看起来很奇怪的输出 (我讨厌在字符串中输入“don\'t”或其他缩写)。
    【解决方案3】:

    检查选择器的语法 - 我认为应该是

     span[name^='charge']
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-30
      • 1970-01-01
      • 1970-01-01
      • 2019-02-17
      • 1970-01-01
      • 2018-01-04
      相关资源
      最近更新 更多