2006年04月19日(水) [長年日記]
- 5月以降のお仕事募集中です。
■ [javascript] 文字のエスケープ方法
「『JavaScriptを埋め込んだHTML』を出力するJavaScript」をHTML内に埋め込もうとして困った。次みたいな感じ。
<a href= "javascript:(function(){ document.body.innerHTML= '<a href=\'javascript:alert(\"hello\")\'>alert</a>'; })()">exec</a>
これだと「alert(\\"」にあるダブルクォーテーションの所で外側のhrefが切れてしまってうまくいかない。
次のように「\\"」を「\u0022」で置き換えるとうまくいった。
<a href= "javascript:(function(){ document.body.innerHTML= '<a href=\'javascript:alert(\u0022hello\u0022)\'>alert</a>'; })()">exec</a>
Under Translation of ECMA-262 3rd Edition 7.8.4 文字列リテラルの下の方にあるEscape Sequenceの表を参考にした。
■ [web][javascript] 「DHTMLリファレンス」 (マイクロソフト)
このページすぐ見つからなくなるのでメモ。
■ やること
- テーブル生成
- 小型テープ
- クリーニング
- PHSのファームウェアアップデート