こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

特定のHTML箇所をJavaScriptのdocument.write("");で表示させたい

外部JS化する前のテスト段階で、特定のHTML箇所をJSで表示させるにあたり、エラーになってしまいます。
下記部分
--------------------------------------------------
<li class='off' onmouseover="this.className='on'" onmouseout="this.className='off'" title='テスト'><A href='./test.html'>テスト</a>
--------------------------------------------------
を下記のようにしてみているのですが、
--------------------------------------------------
document.write("<li class='off' onmouseover="+this.className='on'+" onmouseout="+this.className='off'+" title='テスト'><A href='./test.html'>テスト</A>");
--------------------------------------------------
FireFoxのエラーコンソールで確認すると
this.className=
--------------↑
の、=の後の部分が指摘されております。

どのようにすればエラーを回避出来ますでしょうか。
宜しくお願い致します。

投稿日時 - 2009-09-05 11:11:33

QNo.5264292

すぐに回答ほしいです

質問者が選んだベストアンサー

文法エラーが出るのは「=」の左辺が変数ではないからです。
なのでthis.classNameの左側に括弧を入れればエラーはなくなります。

ただ、目的のHTMLを出力するには「"」を「\"」とエスケープしてやればいいのでは?

document.write("<li class='off' onmouseover=\"this.className='on'\" onmouseout=\"this.className='off'\" title='テスト'><A href='./test.html'>テスト</a>");

投稿日時 - 2009-09-05 11:39:08

お礼

うまく行きました!

基本的な事だったんですね。

ありがとうございます。

投稿日時 - 2009-09-05 13:27:47

ANo.1

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問