1

nodeValue が html ドキュメントにあるかどうかを確認するスクリプトを作成しようとしています

var myVar= document.getElementsByTagName("b");
for (var i = 0; i < myVar.length; i++) {
  var pumpkin = myVar[i].firstChild;  
  if(pumpkin.nodeValue == "Some text")
  {
    alert("exists");
  }
}

検索したいテキストに&nbsp;、スペースの代わりにフィルタリングされた文字が含まれている場合は機能しません。DOM Inspector で見ていると、これらの文字はありません (代わりに通常のスペースがあります) が、ページ ソースを見るとあります。

私は試した

if(pumpkin.nodeValue == "Some text")

if(pumpkin.nodeValue == "Some&nbsp;text")

しかし、両方とも失敗しました...誰かアイデアがありますか?

(検索したいテキストのソース コードにこれらの文字が含まれていない場合は問題なく動作します)。前もって感謝します

4

1 に答える 1

0

の対応する文字コードregular expression&nbsp;160

var myVar= document.getElementsByTagName("b");
for (var i = 0; i < myVar.length; i++) {
    var str = myVar[i].firstChild.nodeValue;  
    var re = new RegExp(String.fromCharCode(160), "g");
    if(str.match(re)) alert("exists");
}

デモ。

于 2012-07-20T22:49:28.457 に答える