30

重複の可能性:
jQuery / Javascriptはアンカーリンクの<スペース>を%20に置き換えます

私はこのようなsParameterを取得しています:

sParameter = document.getElementById('ddParameterType').value;

ddParameterTypeアイテムのような単語を取得している場合は"Test - Text"、次のように単語のスペースを置き換えています。

sParameter = document.getElementById('ddParameterType').value.replace("","%20");

しかし、それはのような評価者を返してい%20Test - Textます。
私はのように必要ですTest%20-%20Text

4

4 に答える 4

90
sParameter = encodeURIComponent(sParameter.trim()) //"Test%20-%20Text"

.trim文字列から先頭と末尾の空白を削除します。encodeURIComponentURLエンコードします。

于 2012-08-27T11:43:13.710 に答える
17

replace("","%20");に置き換えるreplace(/ /g,"%20");

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

于 2012-08-27T11:45:22.337 に答える
8
 sParameter = encodeURIComponent(sParameter.trim())
于 2012-08-27T11:45:01.310 に答える
5

代わりに、すべてのオカレンスを置き換えるには、以下を使用してください。

document.getElementById('ddParameterType').value.replace(/ /g, "%20");

またはさらに良い

encodeURIComponent(document.getElementById('ddParameterType').value);
于 2012-08-27T11:42:57.127 に答える