0

我想删除 id 为 ABN%_divMetricMain 的 div,我正在编写以下代码行但它没有任何解决方案?

$("div[id$=" + code + "_divMetricMain]").remove();  //code=ABN%

我得到了解决方案,并与大家分享:

if ($("input[id$=metricId]:contains('%')"))   \\code=metricId which is ABN% 
{
                        var code = code.replace("%", "\\%");
                        $("div[id$=" + code + "_divMetricMain]").remove();
}

原因是使用任何元字符(例如 !"#$%&'()*+,./:;<=>?@[]^`{|}~ )作为 a 的文字部分名称,它必须用两个反斜杠转义: \ 引用链接

4

4 回答 4

0

花了一天的时间后,我得到了解决方案,并与大家分享:

if ($("input[id$=metricId]:contains('%')"))   \\code=metricId which is ABN% 
{
                        var code = code.replace("%", "\\%");
                        $("div[id$=" + code + "_divMetricMain]").remove();
}

原因是使用任何元字符(例如 !"#$%&'()*+,./:;<=>?@[]^`{|}~ )作为 a 的文字部分名称,它必须用两个反斜杠转义: \ 引用链接

于 2013-10-31T09:11:20.010 回答
0

尝试使用属性包含 * 选择器

  $("div[id*=" + code + "_divMetricMain]")
于 2013-10-30T16:33:42.997 回答
0

示例

$("div[id*='a%']").css('background-color','red')// 你应该做 remove 而不是 css。

因此对于 :

<body>
  <div id='a%2'>a</div>
  <div id='a3'>a1</div>
  <div id='a%6'>a2</div>
  <div id='a2'>a3</div>
  <div id='a%5'>a4</div>
</body>

在此处输入图像描述

于 2013-10-30T16:34:57.093 回答
0

尝试使用实际的“=”选择器,同时在你的 id 周围加上一个单引号。

$("div[id='" + code + "_divMetricMain']").remove();
于 2013-10-30T16:35:42.533 回答