1
document.getElementById("Message").innerHTML=document.getElementById("Message").innerHTML.replace("'","%%");

上記のステートメントは、一重引用符の最初の出現のみを置き換えます。その直後に送信を行い、JavaScriptが前のステートメントが完了するのを待たずに次のステートメントに進むためでしょうか?

4

5 に答える 5

3

正規表現を使用してみてください/g

.replace(/'/g,"%%")

以下のようにコードを変更してください。

document.getElementById("Message").innerHTML = 
                  document.getElementById("Message")
                          .innerHTML
                          .replace(/'/g,"%%");
于 2012-09-26T15:40:04.187 に答える
0

JavaScript でグローバルに置換するには、置換文字列に /g を追加する必要があります。

このSOリンクを参照JavaScriptを使用して文字列内のすべてのドットを置き換える方法

于 2012-09-26T15:40:01.660 に答える
0

置換には正規表現を使用する必要があります。

document.getElementById("Message").innerHTML=document.getElementById("Message").innerHTML.replace(/'/g,"%%");

jsfiddle

于 2012-09-26T15:40:14.010 に答える
0

Global (g)replace() パラメータでフラグを使用します。

こちらをご覧ください

于 2012-09-26T15:41:27.467 に答える
0

正規表現と/g(グローバル) フラグを使用する必要があります。これにより、すべてのオカレンスが置き換えられます。

document.getElementById("Message").innerHTML=
    document.getElementById("Message").innerHTML.replace(/'/g,"%%");

http://www.w3schools.com/jsref/jsref_replace.asp

于 2012-09-26T15:42:00.500 に答える