久野です。

mon@nifty.comさん:
> javascript内でのエスケープって決まりがあるのでしょうか?
> 下記のようなサンプルで動かしてみたところ
> innerHTMLでは下記のdata1が正しく,
> confirmやaltでは下記のdata2が正しく動くようです.
> できれば両方で有効なエスケープ方法が知りたいのですが
> 何かないでしょうか?

  innerHTMLに入れるっていうことはHTMLの規則に従わなければなりま
せんから。「<」はエスケープではなくHTMLの文字エントリであり、
HTMLに「<」を出力する以上これ以外の方法ではタグになってしまいま
すから文字エントリを使うしかない、ということでは。逆にタグを出し
たい時は「&lt;」じゃ困るでしょ?

  むしろ正しいのはJavaScript上では「\x3C」を使っておき、
innerHTMLに入れるときに必要に応じて「<」「>」「&」「"」を文字エ
ントリに置換するような変換を介して入れることかなという気がします。

                面倒だからあまり考えてないけど。           久野