質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

2714閲覧

document.writeの代替方法が分からない

ma2hiro

総合スコア157

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

3クリップ

投稿2020/09/01 05:18

編集2020/09/01 06:01

お世話になっております。

今現在javascriptで下記を書き直す方法を探しております。

document.write('<frameset rows="50%,50%" border="1" name="rfp">'); document.write('<frame src="./test.htm" name="forum1">'); document.write('<frame src="./test.htm">'); document.write('</frameset>');

document.writeは非推奨なので
上記を書き換えようとしており
ぐぐっても

javascript

1document.getElementById(“output1”).innerHTML = “出力させる文章”;

html

1<p id="output1"></p>

みたいなものしか引っかかりません……

上記

javascript

1 document.write('<frameset rows="50%,50%" border="1" name="rfp">'); 2 document.write('<frame src="./test.htm" name="forum1">'); 3 document.write('<frame src="./test.htm">'); 4 document.write('</frameset>');

を変更しようにもそのIDを指定する方法に
document.writeを使ったら意味ないので htmlを使用せずにjavascriptを表記したい場合
どのようにするのか その調査するか伺ってよろしいでしょうか?

お忙しいところ大変申し訳無いのですが上記お問い合わせいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yambejp

2020/09/01 05:48

文字のエンクローズに変なクォーテーションを使わないでください
ma2hiro

2020/09/01 06:02

yambejpさん 失礼しました。 修正しました。
guest

回答2

0

frameも非推奨です

投稿2020/09/01 05:26

yambejp

総合スコア114769

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ma2hiro

2020/09/01 05:38

ありがとうございます。 iframeを使用するとの事ですね…… https://techacademy.jp/magazine/29480 document.writeでズラーと書いているhtmlを出力するjavascriptは そうするのが良いのかご助力頂けますと嬉しく思います。
maisumakun

2020/09/01 05:40

> iframeを使用するとの事ですね…… というより、移植ではなく、アプリケーション全体を見て「同じ機能性を持つものを作り直す」という方向性で考えたほうがいいでしょう。 今あるコードをベースに開発しようとしても、しがらみが残るだけでメリットがありません。
yambejp

2020/09/01 05:50

機能とコンテンツがきまっているならあとはフルスクラッチで リファクタリングするくらいのつもりでいないとレガシーな書き方に 足を引っ張られつづけるでしょうね・・・
ma2hiro

2020/09/01 06:09

maisumakunさん なるほどです。 作り直した方が良いのですね…… yambejpさん 足を引っ張られるとの事 了解しました。 力不足かも知れませんが頑張ってみようと思います。 コメントありがとうございました。
guest

0

ベストアンサー

javascript

1const elm = document.createElement('生成したい要素名'); 2elm.innerHTML = '要素に入れたい、要素文字列'; 3// 適せん属性指定 4elm.id = '文字列'; 5elm.hoge = 'hogeという属性がある、指定したいなら'; 6document.body.appendChild(elm);

投稿2020/09/01 06:29

miyabi_takatsuk

総合スコア9528

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ma2hiro

2020/09/01 06:51 編集

miyabi_takatsukさん ありがとうございます。 ``` const moi = document.createElement('m生成したい要素名'); moi.innerHTML = 'moi要素に入れたい、要素文字列'; document.body.appendChild(moi); ``` で出来ますね…… もう少し減らして ``` const moi = document.createElement('m生成したい要素名'); moi.innerHTML = 'moi要素に入れたい、要素文字列'; document.body.appendChild(moi); ``` だけでも出来たのでもう少しこの方法を見てみます。 本当に助かりました。ありがとうございました。
miyabi_takatsuk

2020/09/01 06:54

属性指定はしないのでしょうか? srcとかrowsとか。(もっともframeは非推奨なので使うべきではないですが)
ma2hiro

2020/09/01 06:59

??? 大変申し訳ございません。 html5だと属性指定は必須なのでしょうか? 只今調査中ゆえ勉強不足で申し訳無いのですが上記お問い合わせいたします。
miyabi_takatsuk

2020/09/01 07:06 編集

必須とかではなく、 本回答の手法だと、属性は最初つきませんので、 自身で指定する必要があります。
ma2hiro

2020/09/01 07:13

miyabi_takatsukさん コメントありがとうございます。 なるほど。 html5だと属性というものがあるのですね…… もう少し詳しく調べてみます。 本当にありがとうございます。
miyabi_takatsuk

2020/09/01 07:19

あ、いや・・・・。 <frame src="">となっていたら、 srcが属性になります。 HTML5より前というか、HTMLが生まれた当初からあります。 HTMLに関してもっとよく勉強しましょう。
ma2hiro

2020/09/01 07:28

ありがとうございます。 早とちり失礼しました。 本当にありがとうございました。
ma2hiro

2020/09/01 07:52

miyabi_takatsukさん 本当に申し訳ございません。 新しい質問あげた方が良いかも知れませんが 下記はなぜかiframeが表示されないのですが原因おわかりになりますでしょうか? ``` const moi2 = document.createElement('m2生成したい要素名'); moi.innerHTML = '<iframe src="./test.htm" name="forum1"></iframe>'; document.body.appendChild(moi2); ``` うーん html5難しいと思っております。
miyabi_takatsuk

2020/09/01 08:02 編集

そうですね、別トピにした方がいいかと。 その際、質問本文にて、本質問へのリンクも貼って下さい。 上のコメントの構文も。
ma2hiro

2020/09/01 08:17

本当に度々ありがとうございます。 新規で質問する前に上記htmlを見てみると moi2.innerHTML = '<iframe src="./test.htm" name="forum1"></iframe>';  ↑としていなかったためでした。 本当にお手数おかけしました。ありがとうございました。
miyabi_takatsuk

2020/09/01 08:20

あの、まさか、 const moi2 = document.createElement('m2生成したい要素名'); は、 「m2生成したい要素名」って文字列でそのままやってないですよね?
ma2hiro

2020/09/03 00:06

miyabi_takatsukさん そのままでやっています…… そこらへんが違うのですね…… ありがとうございます。確認してみますm(_ _)m
miyabi_takatsuk

2020/09/03 00:30

その文字列は、あくまで例としてだしたので、 そこには、HTML要素の名前が入ります。 コンソールを見ながらやったほうがいいですね。
ma2hiro

2020/09/03 00:41

コメントありがとうございます。 調べると”タグ名”だったのでその前で設定したタグを指定しないとイケマセンね…… 一点質問がございます。 >コンソールを見ながらやったほうがいいですね。 仰っているコンソールとは何をご指定されているのでしょうか? Chromeを使用しているので「その他のツール」>「デベロッパーツール」の事かな?とも思いましたが 違っているようなので上記お問い合わせいたします。
miyabi_takatsuk

2020/09/03 01:07

デベロッパーツールで大丈夫ですよ。 その中で、consoleという項目がありますが、それです。 JavaScript上のエラーなどが出てくるので、 JavaScriptの開発には欠かせません。
ma2hiro

2020/09/03 02:19

miyabi_takatsukさん 「その他のツール」>「デベロッパーツール」との事 了解しました。 本当にありがとうございましたm(_ _)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問