【问题标题】:Can I put a single quote in a JQuery attribute equals selector ([attribute=value])?我可以在 JQuery 属性等于选择器([attribute=value])中放一个单引号吗?
【发布时间】:2012-12-27 23:34:48
【问题描述】:

我的 Html 看起来像这样:

        <a href="#" id="QuoteTest">Click Here</a>
        <ul>
            <li title="this" style="position:relative">one</li>
            <li title="this" style="position:relative">two</li>
            <li title="tha't" style="position:relative" >three</li>
            <li title="tha't" style="position:relative">four</li>
         </ul>

jquery:

$('a#QuoteTest').click(function() {
    $('li[title=this]').animate({ 'left': '+=40px' }, 'slow');
    $("li[title=tha't]").animate({ 'top': '+=40px' }, 'slow');
});

我无法让选择器在其中使用单引号。我尝试使用“\”反斜杠转义引号,但这没有帮助。

对提供的方式有什么想法吗?

【问题讨论】:

    标签: jquery css-selectors


    【解决方案1】:

    试试两个

    $("li[title=tha\\'t]").animate({ 'top': '+=40px' }, 'slow');

    【讨论】:

      【解决方案2】:

      这些在 IE 中都不适合我,所以我不得不使用 filter():

      $("li").filter(function(index){
          return $(this).attr("title") == "tha\'t"; 
      })
      .animate({ 'top':'+=40px' }, 'slow');
      

      【讨论】:

        【解决方案3】:

        我认为你需要一个双反斜杠,这很奇怪。关于 jQuery 如何转义这些字符串的一些信息。所以你有:

        $("li[title=tha\\'t]").animate({ 'top': '+=40px' }, 'slow');
        

        在其他情况下也是如此。让我知道这次是否可行。

        【讨论】:

          猜你喜欢
          • 2012-06-19
          • 1970-01-01
          • 1970-01-01
          • 2011-09-14
          • 1970-01-01
          • 2010-10-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多