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

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

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

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

未経験

自身が未経験である領域や知見がない分野などについての質問を投稿する際にご使用ください。

Q&A

0回答

199閲覧

PDF出力のプログラムがうまく組めず困っています。

kisarazu0430

総合スコア0

JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

未経験

自身が未経験である領域や知見がない分野などについての質問を投稿する際にご使用ください。

0グッド

1クリップ

投稿2023/12/09 23:56

実現したいこと

・ミュージシャンが使うセットリストのPDF出力のプログラム

詳細

・html、Javascriptを用いて上記プログラムを作っています。
・当方就業未経験者です。
・バンド名、日付、曲目を入力して出力されるようなプログラムにしたいと思っています。

発生している問題

・PDF出力、曲を追加 をしてもボタンの反応がない状況(こちらは他言語でしたり、ライブラリを作る必要がありますでしょうか、、、)

該当のソースコード

html

1<!DOCTYPE html> 2<html lang="en"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <title>セットリスト作成</title> 7</head> 8<body> 9 <h1>バンドのセットリスト作成</h1> 10 11 <label for="bandName">バンド名:</label> 12 <input type="text" id="bandName"> 13 14 <label for="date">日付:</label> 15 <input type="date" id="date"> 16 17 <h2>セットリスト</h2> 18 19 <ol id="setlist"> 20 <!-- セットリスト項目がここに追加されます --> 21 </ol> 22 23 <button onclick="addSong()">曲を追加</button> 24 <button onclick="generatePDF()">PDF出力</button> 25 26 <!-- jsPDFを使用する場合は、ライブラリを読み込む --> 27 <script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/2.4.0/jspdf.umd.min.js"></script> 28 <!-- JavaScriptファイルを読み込む --> 29 <script src="portfolio.js"></script> 30</body> 31</html> 32

js

1// セットリストの曲を追加する関数 2function addSong() { 3 const setlist = document.getElementById('setlist'); 4 if (setlist.children.length < 20) { 5 const songNumber = setlist.children.length + 1; 6 const songName = prompt(`${songNumber}の名前を入力してください:`); 7 if (songName) { 8 const listItem = document.createElement('li'); 9 listItem.textContent = songName; 10 setlist.appendChild(listItem); 11 } 12 } else { 13 alert('これ以上曲を追加できません。'); 14 } 15} 16 17// PDFを生成する関数 18function generatePDF() { 19 const bandName = document.getElementById('bandName').value; 20 const date = document.getElementById('date').value; 21 const setlistItems = Array.from(document.getElementById('setlist').children) 22 .map(item => item.textContent); 23 24 // ここでPDFを生成するためのライブラリやサーバーサイドのエンドポイントを呼び出す処理が入ります 25 // 例えば、jsPDFを使用してクライアントサイドでPDFを生成する場合: 26 const pdf = new jsPDF(); 27 pdf.text(`バンド名: ${bandName}`, 10, 10); 28 pdf.text(`日付: ${date}`, 10, 20); 29 pdf.text('セットリスト:', 10, 30); 30 31 setlistItems.forEach((item, index) => { 32 pdf.text(`${index + 1}. ${item}`, 10, 40 + index * 10); 33 }); 34 35 pdf.save('setlist.pdf'); 36} 37

補足情報(FW/ツールのバージョンなど)

Pythonなどの他言語が必要な場合もあれば、ぜひご教示いただければ幸いです。
なにとぞよろしくお願いいたします。

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

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

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

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

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

meg_

2023/12/10 06:02

> ・PDF出力、曲を追加 をしてもボタンの反応がない状況 コードに問題があれば何かしらエラーが発生するかと思いますが、何かエラーは発生していませんか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.37%

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

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

質問する

関連した質問