HTML で特殊文字をエスケープすることを認識しています。
しかし、状況に遭遇したので、私はまだこれを求めています。
入力に検証を入れることが許可されていない JSP があります。ユーザーが特殊文字を入力してテストしています。
入力文字列:
'#@$%
データベースから表示しているときは、使用しています
<%= StringEscapeUtils.escapeHtml(map[i].get("text").toString())%>
ここで、「map」は Hashmap の配列です。これはうまくいきます。
問題は、この文字列を JavaScript に渡す必要があるときに発生します。
<input type="Button"
onclick="onEdit('<%= StringEscapeUtils.escapeHtml(map[i].get("text").toString())%>',
'<%= strShortCut%>','<%= map[i].get("uid")%>')" value="Edit">
文字列は になり''#@$%'
ます。
一重引用符をエスケープするにはどうすればよいですか?