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

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

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

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

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

Q&A

解決済

2回答

1396閲覧

JavascriptのinnerHTMLが使えない

nguyenseiji

総合スコア156

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

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

0グッド

0クリップ

投稿2021/06/21 11:44

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

innterHTMLを使って動画と画像を動的に変更したいのですがhtmlのタグをinnterHTMLを使って変更しようとしてもできないです

javascript

1 function LinkClick(param,extension) { 2 var element = document.getElementById("Image01"); 3 4 switch (param) { 5 case 0: 6 7 extern = CheckFileType(extension); 8 if(extern == "png" || extern == "jpg"){ 9 element.innerHTML = '<img id="Image01" class="MainImage1" src="" >'; 10 }else if(extern == "mp4"){ 11 element.innerHTML = '<video controls class="Video"><source src="" type="video/mp4"></video>'; 12 } 13 element.src = `../wounise/gamelist/${Id}/img/${Exp_Image1_Path}`; 14 break; 15 case 1: 16 extern = CheckFileType(extension); 17 if(extern == "png" || extern == "jpg"){ 18 element.innerHTML = '<img id="Image01" class="MainImage1" src="" >'; 19 alert("png"); 20 }else if(extern == "mp4"){ 21 22 element.innerHTML = '<video controls class="Video"><source src="" type="video/mp4"></video>'; 23 24 } 25 element.src = `../wounise/gamelist/${Id}/img/${Exp_Image2_Path}`; 26 break; 27 case 2: 28 element.src = `../wounise/gamelist/${Id}/img/${Exp_Image3_Path}`; 29 break; 30 case 3: 31 element.src = `../wounise/gamelist/${Id}/img/${Exp_Image4_Path}`; 32 break; 33 case 4: 34 element.src = `../wounise/gamelist/${Id}/img/${Exp_Image5_Path}`; 35 break; 36 default: 37 element.src = `../wounise/gamelist/${Id}/img/${Exp_Image6_Path}`; 38 break; 39 } 40 } 41 </script> 42 43 44 45 46 <!-- For image list array --> 47 48<?php 49 50 51$EOM = <<<EOM 52 53<img id="Image01" class="MainImage1" src="../wounise/gamelist/$Id/img/$Exp_Image1" > 54<br/> 55 <a href="javascript:void(0);" onclick="LinkClick(0,`${Exp_Image1}`);"><img class="SecondImage1" id="SecondImage1" src="../wounise/gamelist/$Id/img/$Exp_Image1"></img> 56 </a><br/> 57 <a href="javascript:void(0);" onclick="LinkClick(1,`${Exp_Image2}`);"><img class="SecondImage1" id="SecondImage1" src="../wounise/gamelist/$Id/img/$Exp_Image2"></img> 58 </a><br/> 59 <a href="javascript:void(0);" onclick="LinkClick(2,`${Exp_Image3}`);"><img class="SecondImage1" id="SecondImage1" src="../wounise/gamelist/$Id/img/$Exp_Image3"></img> 60 </a><br/> 61 <a href="javascript:void(0);" onclick="LinkClick(5,`${Exp_Image4}`);"><img class="SecondImage1" id="SecondImage1" src="../wounise/gamelist/$Id/img/$Exp_Image4"></img> 62 </a><br/> 63 <a href="javascript:void(0);" onclick="LinkClick(4,`${Exp_Image5}`);"><img class="SecondImage1" id="SecondImage1" src="../wounise/gamelist/$Id/img/$Exp_Image5"></img> 64 </a><br/> 65 <a href="javascript:void(0);" onclick="LinkClick(5,`${Exp_Image6}`);"><img class="SecondImage1" id="SecondImage1" src="../wounise/gamelist/$Id/img/$Exp_Image6"></img> 66 </a><br/> 67EOM; 68 69echo $EOM; 70 71?> 72 73 74 75 76 77 78 79<script type="text/javascript"> 80document.getElementById("D1").innerHTML = "あいうえお"; 81</script> 82 83 84 85<?php 86 $foo = 'abcde'; 87?> 88 89<script type="text/javascript"> 90 91 92function CheckFileType(extern){ 93 94const path = extern; 95console.log('typeof: ' + typeof path); 96console.log('value: ' + path); 97 98match = path.match(/[^/]+$/); 99filename = path.match(/([^/]*)./)[1]; 100extend = path.match(/[^.]+$/); 101console.log("fileinfo = " + match); 102console.log("filename = " + filename); 103console.log("extend = " + extend); 104return extend; 105 106}

上記のコードからCheckFileType関数でファイルの拡張子をチェックして.mp4だったら
element.innerHTML = '<video controls class="Video"><source src="" type="video/mp4"></video>';

<img id="Image01" class="MainImage1" src="../wounise/gamelist/$Id/img/$Exp_Image1" >
上記の<img>タグを全て<video>に変更したいですがデベロッパーツールで確認しても<img>タグのままになってしまいます...

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

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

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

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

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

guest

回答2

0

ベストアンサー

innerHTMLってタグから閉じタグの間にある部分ですよ?
あまりおすすめはできませんが、せめてouterHTML

javascript

1<div id="hoge">hoge</div> 2<script> 3document.querySelector('#hoge').outerHTML='<div id="fuga">fuga</div>'; 4</script>

ちゃんとやるならDOMベースで書き換えて下さい

投稿2021/06/21 11:54

yambejp

総合スコア116724

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

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

nguyenseiji

2021/06/21 12:12

返信ありがとうございます。 別の質問になってしまうのですが element.src = `../wounise/gamelist/${Id}/img/${Exp_Image2_Path}`; 上記のコードを element.src = "../wounise/gamelist/".`${Id}`."/img/"`.${Exp_Image2_Path}`; のように変数の部分だけバッククォ-トで囲む方法をやるとなぜエラーになってしまうのでしょうか パスである文字列部分はダブルクオートで囲んでいます
yambejp

2021/06/21 12:46

>.`${Id}`. javascriptの文字連結はピリオドではなく+です
nguyenseiji

2021/06/21 13:00

ありがとうございます。
guest

0

`は「バッククォート」です。
文字列を囲うのは「シングルクォート」もしくは「ダブルクォート」

幾度となくアドバイスしていますが、
ブラウザに出力されたHTMLの確認はしてください。

PHPとはあたりから基礎が必要では。
JavaScriptも同じくらい(文字列の扱い)から。

投稿2021/06/21 11:49

編集2021/06/21 11:51
m.ts10806

総合スコア80875

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

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

nguyenseiji

2021/06/21 11:52

ブラウザに表示というのはデベロッパーツールで確認するという事でしょうか
m.ts10806

2021/06/21 11:55

今その質問がきたことに驚きです。 確認方法は1つだけではないので、まず色々やってみては。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問