Javascript字符串包含 "&nbsp"无法匹配

标签 javascript html

我有一个 HTML 文本,文本中必须包含  ,然后我使用 Javascript 获取 innerHTML 并进行比较,但它不起作用.

   var x = randomGen();
   document.getElementById("c"+x[0]).innerHTML="&nbsp&nbspa, b, c&nbsp&nbsp";
   document.getElementById("c"+x[1]).innerHTML="&nbsp&nbspc, d, e&nbsp&nbsp";
   document.getElementById("c"+x[2]).innerHTML="&nbsp&nbspf, g, h&nbsp&nbsp";
   document.getElementById("c"+x[3]).innerHTML="&nbsp&nbspa, a, a&nbsp&nbsp";

function checkans(ans){
    if (ans=="&nbsp&nbspa, a, a&nbsp&nbsp") {
       alert(ans);
    }
}

HTML 正文:

<div class="ans" id="c1" onclick="checkans(this.innerText)"></div>
<div class="ans" id="c2" onclick="checkans(this.innerText)"></div>
<div class="ans" id="c3" onclick="checkans(this.innerText)"></div>
<div class="ans" id="c4" onclick="checkans(this.innerText)"></div>

所有情况都返回 false。

最佳答案

and then I use Javascript to get the innerHTML and do the comparison

这不是真的。很明显,您使用的是 innerText,而不是 innerHTML,而且它们不是同一回事。

如果您确实使用 innerHTML,请更正您的代码以使用  (浏览器会自动将您的 &nsbp 更改为 &nsbp; 当您将它们分配给 .innerHTML 时,代码可以工作:

var x = [3, 2, 1, 4]
document.getElementById("c" + x[0]).innerHTML = "&nbsp;&nbsp;a, b, c&nbsp;&nbsp;";
document.getElementById("c" + x[1]).innerHTML = "&nbsp;&nbsp;c, d, e&nbsp;&nbsp;";
document.getElementById("c" + x[2]).innerHTML = "&nbsp;&nbsp;f, g, h&nbsp;&nbsp;";
document.getElementById("c" + x[3]).innerHTML = "&nbsp;&nbsp;a, a, a&nbsp;&nbsp;";

function checkans(ans) {
  if (ans == "&nbsp;&nbsp;a, a, a&nbsp;&nbsp;") {
    alert(ans);
  }
}
<div>Click the "a, a, a" option to see an alert box</div>
<div class="ans" id="c1" onclick="checkans(this.innerHTML)"></div>
<div class="ans" id="c2" onclick="checkans(this.innerHTML)"></div>
<div class="ans" id="c3" onclick="checkans(this.innerHTML)"></div>
<div class="ans" id="c4" onclick="checkans(this.innerHTML)"></div>

关于Javascript字符串包含 "&nbsp"无法匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42671659/

相关文章:

javascript - JQuery show() - 暂停函数直到执行回调

Javascript LocalStorage 作用域

html - 重叠的CSS矩形

html - 对分隔的连续表格应用相同的表格列宽

javascript - 单击查找元素并打开最近的模式窗口

javascript - 我该如何应对休息? javascript switch 中 return 语句之后的语句?

javascript - 使用 ATAN 而不是 ATAN2 旋转图像以面向鼠标点

php - 在 Javascript If else 语句中显示 HTML

css - 使用列表项重置 Zebra Css Design

html - 全屏居中 html5 视频直播