• ベストアンサー

document.write内のタグ

<SCRIPT LANGUAGE="JavaScript"> <!-- // 曜日よって文字を変える w = (new Date()).getDay(); if(w == 0) document.write(" ・・・・・・"); ・・・・・・ ・・・・・・ //--> </SCRIPT> 曜日によって表現(文章など)をかえるスクリプトですが、(" ・・・・・・"); の中のタグをわかりやすいように改行したりすると、表示自体されなくなります。また、 <tr><td></td></tr> <tr><td></td></tr> というように空白をあけると妙に行間があいてしまいます。 スクリプトがちゃんと表現されるようにするための解決策はわかってますが、改行してわかりやすいようにタグを整列させたいのです。その方法というのはあるのでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.4

document.write って確か、引数を複数取れたと思うので、 document.write( "なんちゃらかたら", "べつのなんたらかたら" ); とかカンマで区切ってみたらどうでしょうか

ame-sanc
質問者

お礼

if(w == 5) document.write("  <font size=\"2\" color=\"magenta\">8/4の金曜日<br>AAA<br>BBB<br>CCC</font>"); が今日の分ですが、ご指摘どうり if(w == 5) document.write("  , <font size=\"2\" color=\"magenta\">8/4の金曜日<br>, AAA<br>, BBB<br>, CCC</font>"); みたいにすると、やはり文字が消えてしまいます。 ありがとうございました。

ame-sanc
質問者

補足

↓これ、ご指摘どうりはやってません。#5さんの補足でわかり、無事解決しました。これだったら結構簡単にできそうです。ありがとうございました。

その他の回答 (4)

noname#19175
noname#19175
回答No.5

> ANo.4 お礼 JavaScriptでは、文字列は必ずクォーテーションで囲まなければなりません。

ame-sanc
質問者

お礼

if(w == 5) document.write("  ", "<font size=\"2\" color=\"magenta\">8/4の金曜日<br>", "AAA<br>", "BBB<br>", "CCC</font>"); 改行するごとに個別に囲むということですね! ご指摘どうりにしたところ、表示されました。 ありがとうございます。無事解決いたしました!

  • to_kyo
  • ベストアンサー率41% (7/17)
回答No.3

#1で回答したあとに気づいたのですが document.write()で表示したとしても 別に、ソースがキレイになるわけじゃないですよね。 ということは、質問者の意図としては documtne.write()するHTMLタグを、 Javascript内で、キレイに書く方法が知りたい?? であれば、document.write()とか、 writeする変数を複数行にわけて 書いてあげるっていうのはどうでしょうか。 --------------------------------- var contents = ""; contents += "<table border='1'>"; contents += " <tr>"; contents += "  <td>"; contents += "   INSIDE!!!"; contents += "  </td>"; contents += " </tr>"; contents += "</table>"; document.write(contents); --------------------------------- みたいな。

ame-sanc
質問者

お礼

>Javascript内で、キレイに書く方法 はい、そのとうりです。 これだとすると、かなり手を加えなければならないということですね。(基本コピペでよさそうですが) ためしてみたいと思います。ありがとうございました。

noname#19206
noname#19206
回答No.2

(" ・・・・・・"); の部分は1行で書かなければなりません。JavaScript は行を判別して処理を行います。 例: document.write('ここは認識される'); //ここ以降、この行は認識されない document.write('行が変わったここは認識される'); あと、JavaScript で終了タグを書く場合、'<'+'/b>' のように </ を分けて書かないとエラーの起こる場合があります. 解決方法は… #1 の人に先を越されているので省略。私はアドバイスのみです。

ame-sanc
質問者

お礼

>JavaScript は行を判別して処理を行います・・・・ 補足ありがとうございます、勉強になりました。

  • to_kyo
  • ベストアンサー率41% (7/17)
回答No.1

改行したいとこに「\n」 タブいれたいとこに「\t」 とかをいれる、、、という回答は はずしてますでしょうか???

ame-sanc
質問者

お礼

ありがとうございます。

関連するQ&A

  • スクリプトについて 2

    先ほど質問したものの延長ですが、 <table> <tr> <td> <SCRIPT LANGUAGE="JavaScript"> <!-- w = (new Date()).getDay(); if(w == 3) document.write("水曜です。"); //--> </SCRIPT> </td> </tr> </table> 水曜日にテーブルの中に「水曜日です」という言葉と同時に、td~td に挟まれた部分の背景を bgcolor="blue" にしたい(背景を火曜日は赤、木曜日は茶、みたいにしたい)のですがどうやればよろしいでしょうか?

  • tableタグについて(ウェブリブログ)

    ウェブリブログの記事内にテーブルタグで『表』は表示出来たのですが、公開ページを見ると表と同じだけの行数が上部にスペースとしてあきます。 記事作成ページでは改行はしてませんし、空白行もありません。 タグは↓です。 <table bgcolor="#000000"border=1> <tr><td>●●</td><td>■■</td><td>▲▲</td></tr> <tr><td>●●</td><td>■■</td><td>▲▲</td></tr> <tr><td>●●</td><td>■■</td><td>▲▲</td></tr> <tr><td>●●</td><td>■■</td><td>▲▲</td></tr> </table> 単純な表ですが別な表示方法があるのでしょうか? できればタグが知りたいです。

  • htmlタグを改行もせずに隙間なく書き続けると問題ありますか?

    htmlタグを改行もせずに隙間なくすると問題ありますでしょうか? ページ内の文字数(バイト数?)を 減らそうと思い、隙間なくしてみたいのですが。 例えば、改行して <table~省略> <tr> <td> <font~省略> </td> </tr> </table> を、 <table~省略><tr><td><font~省略></td></tr></table> と改行せずに、連ねてしまうと、 何か問題はありますでしょうか? 検索で順位が下がるとか、タグが読みづらくスパム扱いされたりはしないでしょうか? よろしくお願いします。

  • JavaScriptを入れるとtdタグ内の高さが広がる

    CSSにて高さ指定もしてあるのですが、JavaScriptの記載あるtdタグの高さがIEだと広がってしまいます。 この現象はFireFoxだと現れません。 下記コードですと3段目と4段目のtdの高さが他の段に比べ広がってしまいます。 何か解決策とうございましたら、教えてください。 -----------JavaScript関数----------- <script language="javascript"> function goNext() {  if (confirm("確認")) {   return true;  } else {   return false;  } } </script> -----------html----------- <table id="tablea"> <tr><td class="b"><img src="img.jpg"/></td></tr> <tr><td>&nbsp;</td></tr> <tr><td class="b"><form action="5_4modify1_pla.html" onsubmit="return goNext();"><input name="bb" type="image" src="img.jpg" width="150" height="30"/></form></td></tr> <tr><td class="b"><form action="5_4modify1_pla.html" onsubmit="return goNext();"><input name="bb" type="image" src="img.jpg" width="150" height="30"/></form></td></tr>  <tr><td class="b"><img src="img.jpg"/></td></tr> </table> -----------CSS----------- .b {height: 30px;} #tablea { width: 180px; height: 200px;} ----------------------

    • ベストアンサー
    • HTML
  • JavaScript

    JavaScriptで <SCRIPT LANGUAGE="JavaScript"> <!-- // 曜日よって文字を変える w = (new Date()).getDay(); if(w == 0) document.write("今日は日曜日です。"); if(w == 1) document.write("今日は月曜日です。"); if(w == 2) document.write("今日は火曜日です。"); if(w == 3) document.write("今日は水曜日です。"); if(w == 4) document.write("今日は木曜日です。"); if(w == 5) document.write("今日は金曜日です。きんきん!"); if(w == 6) document.write("今日は土曜日です。"); //--> </SCRIPT> その名のとうり曜日によって表示を変えるのですが、文字の中に改行タグ<br><p>などを挿入しても問題なく表示されます。ところが<font>タグを入れると全く何も表示されなくなります。 「きんきん!」の部分を大きくして、赤色にしたいのですがどうすればよいでしょうか?

  • クリックで背景変更するタグ

    素材屋さんなどによくある、画像をクリックをすると背景が変わるというプログラムを作りたいのですが、調べてみたタグではうまくいきませんでした。 <tr><td><a href="#" onClick="javascript:bgChange('画像ファイル名');return false"><img src="画像ファイル名" border="0"></a></td></tr> 以下を<HEAD>区間に貼り付け <SCRIPT LANGUAGE="JavaScript"> <!-- function bgChange(myback){ document.body.background=myback; } //--> </SCRIPT> これだと、画像のプロパティがhttpで始まるものはうまくいくのですが、マイドキュメントに保存してある画像(自分で撮った写真など)では、背景が真っ白になってしまいます。 Win98、ブラウザはIE5.5です。 どなたか、教えてくださると幸いです。

  • タグ「nowrap」について

    こんなこと質問するなよ! ーってな感じの質問ですが、 HTML言語の、テーブルの中で改行を防ぐタグ、「nowrap」ってありますね? それについてなんですが、 nowrapってこんなふうに(下図参照) <TABLE> <TR><TD nowrap></TD></TR> <TR><TD nowrap></TD></TR> ・・・・・以下略・・・・・ <TR><TD nowrap></TD></TR> </TABLE> のようにセル一つずつに書き込まなきゃいけないのですか? それとも、一番上のものかなにかに一つだけ書き込めばいいのでしょうか? 教えてくださいm(._.*)mペコッ

  • 外部JavaScriptで書き出す文字がMozilla改行してくれない

    下記で書き出した文字列ですが、IEだと450pxで改行されるのに対して、Mozillaだと改行してくれません。 どうすれば改行してくれるのか、何がまずいのかご教授お願いします。 -----HTML <TABLE width='450' border='0' cellspacing='0' cellpadding='0' bgcolor='#FFE0B8'> <TR> <TD width='450'><SCRIPT LANGUAGE="JavaScript" src="sample.php"></SCRIPT> </TD> </TR> </TABLE> -----sample.php <?php //header("Content-type: text/html"); print "document.write(\"123456789012345678901234567890123456789012345678901234567890\")"; ?>

  • FORMタグ後の改行を抑制したい

    FORMタグを使用した後に自動的に改行されますが、これを改行されないように 抑制する方法をご存知でしょうか? 下記の例のようにTABLEタグを使用することで、横にFORMタグを並べることはできたのですが、ひとつのセル内で改行されてしまい、縦長のセルになってしまいます。 <TABLE BORDER=1> <TR> <TD> AAA<FORM> </FORM> </TD> <TD> BBB<FORM> </FORM> </TD> </TR> </TABLE> スタイルシートでも、なんでも構いませんのでなにか方法があったらご教授ください。 環境:Windows2000, IE5.5

    • ベストアンサー
    • HTML
  • XOOPSのHTMLタグ記入について

    XOOPS cube2.0を使用しています。 FAQモジュールで、質問/回答の項目を増やし、回答欄でHTMLタグを使用しましたが、どうも表示が不正です。 具体的には、TABLEタグなのですが、TABLEタグを使用してページを表示させた場合、かなり大きな空白が表の上にできてしまいます。 TABLEタグを消すとそういったことがなくなるので、TABLEタグが問題なのか、どうなのか。 ソースを表示させようと右クリックしても表示できないので困ってます。 何かよい助言をいただけないでしょうか。 ●必要事項を入力します。 <TABLE BORDER="1" WIDTH="100%" HEIGHT="100%" CELLSPACING="1" CELLPADDING="1"> <TR> <TD>1-1</TD> <TD>1-2</TD> <TD>1-3</TD> </TR> <TR> <TD>2-1</TD> <TD>2-2</TD> <TD>2-3</TD> </TR> </TABLE> としたときに、●必要事項を入力します。のすぐ下に何行もの空白が表示されます…