'
と一緒に特殊文字(例:日本語の文字)をエンコードすることを検討しています。 encodeURIComponent()は特殊文字をエンコードしますが、'
はエンコードしません。 ?エンコードするすべての組み込みJavascript関数 '?
(すなわち符号化する日本の文字だけでなく、'
の両方を行い、任意の作り付けのJavascript機能
'
と一緒に特殊文字(例:日本語の文字)をエンコードすることを検討しています。 encodeURIComponent()は特殊文字をエンコードしますが、'
はエンコードしません。 ?エンコードするすべての組み込みJavascript関数 '?
(すなわち符号化する日本の文字だけでなく、'
の両方を行い、任意の作り付けのJavascript機能
更新:OK、エスケープ/アンエスケープ優しいI18Nされていません。あなたはencodeURIComponent
と言っていますが、ほとんどの方法がありますが、いくつかの文字、つまり'
が欠けています。encodeURIComponent
を使用するヘルパー関数utf8escape
を作ることができますが、残りの文字はエスケープするために'
:
<html><head><title></title>
<script>
function utf8escape(s) {
s = encodeURIComponent(s);
s = s.replace(/'/, '%27');
return s;
}
function enc() {
var f1 = document.getElementById("f1");
f1.value = utf8escape(f1.value);
}
function dec() {
var f1 = document.getElementById("f1");
f1.value = decodeURIComponent(f1.value);
}
</script>
</head>
<body>
<input type="text" id="f1" name="f1" size="80"/><br/>
<button onclick="enc()">Encode</button>
<button onclick="dec()">Decode</button>
</body>
</html>
この実装は非効率的かもしれませんが、あなたは一般的な考えを得るでしょう。
あなたはどんな種類のエンコーディングを探していますか? – Gumbo
'encodeURIComponent'は' ''をエンコードする必要はありません。なぜなら、これはURIの有効な文字だからです。なぜあなたは '' 'をエンコードしたいのですか? – RoToRa
私は*すべての*特殊文字を文字セットで安全な関数でエンコードしたいと思います。 ''は既に '' 'を含む文字列と衝突します。 – pavanlimo