我有一个个人程序,通过文本和带有标记标记的文本。它还有一个搜索历史页脚,您可以单击该页脚来删除标记。标记工作正常但是当您尝试删除单词周围的标记标记时会出现问题,例如"没有"#34; (带撇号的任何单词)。我猜测它与单引号有关,它搞乱了函数参数,但我不知道如何修复它。我已经尝试搞乱函数的引用,但这不起作用。
示例文字:
<div id="NoteHolder">
<p class="NoteOp">
"Testing" <mark class="YelColBox" style="font-weight: bold;">Didn't</mark>
</p>
</div>
页脚上有一个按钮,其中包含单词&#34; Didn&#t; t&#34;在附上此功能的情况下:
removeMark ('didn't','YelColBox')
功能:
function removeMark(tagName, Color) {
var tagNameC = tagName.toUpperCase();
var IndAry = tags.indexOf(tagNameC);
tags.splice(IndAry, 1); //removed the word from a search history
var notes = document.getElementsByClassName("NoteOp");
for (var i = 0; i < notes.length; i++) {
var n = notes[i];
if(window.Bold === "No") {
n.innerHTML = n.innerHTML.replace(new RegExp("<mark class=" + Color + ">(" + tagName + ")</mark>", "gim"), "$1");
}
if(window.Bold === "Yes") {
n.innerHTML = n.innerHTML.replace(new RegExp("<mark class=" + Color + " style='font-weight: bold;'>('" + tagName + "')</mark>", "gim"), "$1");
}
}
var list = document.getElementById("myList");
var idmarker = "MarkID" + tagName;
var ElementID = document.getElementById(idmarker);
MarkList.removeChild(ElementID); //removes the button
}
我的问题有什么解决方案。单击按钮时,按钮未被删除,我收到此错误:
Uncaught SyntaxError: missing ) after argument list test.html:1
哪个没有意义,因为那是<!DOCTYPE html>