首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未明错误:语法错误,不支持伪错误

问未明错误:语法错误,不支持伪错误
EN

Stack Overflow用户
提问于 2016-05-10 07:18:37
回答 1查看 7.2K关注 0票数 1

我正在试图修复代码中的一个bug,这是非常奇怪的。下面的代码创建了一个HTML。它在单击div时调用一个RemoveCompareOffer()函数。这个函数对于所有类型的id都很好,除了一个id,即ADSL2:Bundles。

函数,该函数创建HTML:

代码语言:javascript
复制
function AddCompareOfferInCompareBox()
{
    $('.SelectedOffer').each(function () {
        innerHtml = innerHtml + '<div class="compare-box"> <div class="compare-close"><span class="closed" onclick="RemoveCompareOffer(\''+ $(this).attr("id") + '\')"><i class="fa fa-times"></i></span></div>'
             + '<div class="compare-logo"><img src="' + $(this).attr("imagelink") + '" /></div><p>' + $(this).attr("offername") + '</p>'
             + '<input type="button" value="View Details" class="viewbtn" onclick="CallOfferRenderAction(\'' + $(this).attr("offercode") + '\',\'' + $(this).attr("providercode") + '\')" /></div>';
    });

    $(".AddCompareOfferByMe").html(innerHtml);
}

在此函数上,当它被调用为RemoveCompareOffer('ADSL2:Bundles')时

代码语言:javascript
复制
function RemoveCompareOffer(id) {
    $('#' + id + '.SelectedOffer').removeClass("SelectedOffer").addClass("NotSelected").attr('checked', false);
    AddCompareOfferInCompareBox();
    SetCompareBoxsState();
}

它抛出错误:

JQuery1.11.3.min.js:3未明错误:语法错误,未识别表达式:不支持的伪:包

可能是什么原因?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-10 07:21:15

#ADSL2:Bundles.SelectedOffer是一个选择器,用于查找以下元素:

  • 有id ADSL2
  • 匹配伪类:Bundles。
  • 有SelectedOffer类

没有CSS伪类:Bundles,jQuery也没有添加自己的类;在您的例子中,它是ID的一部分,所以您必须转义:或使用属性匹配语法。

逃跑:

​

代码语言:javascript
复制
var id = "ADSL2:Bundles";
$('#' + id.replace(/:/g, "\\:") + '.SelectedOffer').css("color", "blue");
代码语言:javascript
复制
<div id="ADSL2:Bundles" class="SelectedOffer">Escaping</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

​

使用属性匹配语法:

​

代码语言:javascript
复制
var id = "ADSL2:Bundles";
$('[id="' + id + '"].SelectedOffer').css("color", "blue");
代码语言:javascript
复制
<div id="ADSL2:Bundles" class="SelectedOffer">Escaping</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

​

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37131733

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档