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

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

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

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

JavaScript

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

Q&A

解決済

1回答

7599閲覧

Java Scriptでhtmlの表にセルを追加する時、結合したセルを追加したい

ako999

総合スコア100

HTML5

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

JavaScript

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

0グッド

0クリップ

投稿2019/01/28 16:38

編集2019/01/28 16:50

Java Scriptでhtmlの表のセルを追加する時、結合したセルを追加したいです。
実際に作成しているコードの一部とやりたい事のイメージを画像でまとめました。

色々調べたのですがやり方が分かりません。
よろしくお願いします。

html

1<html> 2<body> 3 <input type="button" onClick="table('AddRow')" value="行+"> 4 <input type="button" onClick="table('AddCol')" value="列+"> 5 6 <table id="tbl"> 7 <tr><td>00</td><td colspan="2">01</td></tr> 8 <tr><td>10</td><td>11</td><td>12</td></tr> 9 </table> 10 11 <script> 12 function table(i){ 13 switch (i) { 14 case 'AddRow': // 行を追加 15 var newRow = tbl.insertRow(); 16 var newCell = newRow.insertCell(); 17 newCell.innerHTML = '先頭行'; 18 19 for (var i = 1; i <= (tbl.rows[1].cells.length-1)/2; i++) { 20 var newCell = newRow.insertCell(); 21 newCell.innerHTML = '--'; 22 var newCell = newRow.insertCell(); 23 newCell.innerHTML = '--'; 24 } 25 break; 26 27 case 'AddCol': // 列を追加 28 var newCell = tbl.rows[0].insertCell(); // 1列 追加 29 newCell.innerHTML = '先頭列'; 30 var newCell = tbl.rows[0].insertCell(); 31 32 for (var i = 1; i < tbl.rows.length; i++) { 33 var newCell = tbl.rows[i].insertCell(); 34 newCell.innerHTML = '--'; 35 var newCell = tbl.rows[i].insertCell(); 36 newCell.innerHTML = '--'; 37 } 38 break; 39 } 40 } 41 </script> 42 43 <style type="text/css"> 44 th,td { 45 border-collapse: collapse; 46 border: solid 0.5px; // 枠線指定 47 border-color: #000; 48 padding: 5px 10px; 49 table-layout: fixed; 50 text-align: center; 51 } 52</style> 53 </body> 54 </html> 55

このプログラムを実行してボタンを押すと↓のようになる
現状
やりたい事は先頭列を2つで1つにすること
やりたい事
イメージは↓こんな感じ
理想

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

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

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

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

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

guest

回答1

0

ベストアンサー

こうでは?

js

1var newCell = tbl.rows[0].insertCell(); // 1列 追加 2newCell.innerHTML = '先頭列'; 3//newCell.colspan = 2; // 2019.01.29 指摘により修正 4newCell.colSpan = 2; 5//var newCell = tbl.rows[0].insertCell();

【【HTML入門】colspanを使って表セルを横に結合してみよう! | プログラミング教室情報サイト【プロナビ】】
http://programming-study.com/technology/html-colspan/

<td>: 表データセル要素 | MDN】
https://developer.mozilla.org/ja/docs/Web/HTML/Element/td#Attributes

【JavaScriptでテーブル作成 - Domo-Domo】
http://d.hatena.ne.jp/t_amago/20090501/p2

投稿2019/01/28 17:13

編集2019/01/29 01:56
kei344

総合スコア69398

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

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

kei344

2019/01/29 01:54

To: x_xさん 指摘ありがとうございます、本文を修正します。試さないといけませんね・・・。
ako999

2019/01/29 02:47

コメントありがとうございます。 1行追加するだけだったんですね...。 どうしても上手くいかず困っていたので助かりました。 ありがとうございました(_ _*)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問