4

どこにも文書化されていない問題がありますが、変数内の文字列ではなく直接文字列を使用している正規表現メソッドが表示されます。これは私のコードです:

var src = getQueryVariable("srcStr");

            if(src != false){
               $(".entry-content").html($(".entry-content")
              .html().replace(/src/g, "<span style='background-color:#f2e128;'>" 
              + src + "</span>"));

}

これは url 変数 (srcStr) を取得し、 .entry-content 内のテキスト本文で var に格納されている文字列を検索しますsrc

問題のコードは次のとおりです。replace(/src/g

解決策はありますか?

4

1 に答える 1

9

文字通り「src」であるパターンを検索しています。RegExpパターンで変数を使用する場合は、クラスを使用する必要があります。

pattern = new RegExp(src, 'g');
$(".entry-content")...html().replace(pattern, replacement);
于 2012-12-03T12:51:00.497 に答える