前提・実現したいこと
Todoリストにおいて、タスクを入力するとIDの下に①番号(0,1,2とタスクを追加するごとに追加される)、②入力したタスク、③作業中のボタン、④削除のボタンを表示したい
発生している問題
②、③、④は作ることができたのですが、①のタスクを追加するごとに数値を出す作業が上手く出来ません。
該当のソースコード
HTML
1 2<!DOCTYPE html> 3<html lang="en"> 4<head> 5 <meta charset="UTF-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 7 <link rel ="stylesheet" href="css/style.css"> 8 <title>Todoリスト</title> 9</head> 10<body> 11 <h1>Todoリスト</h1> 12 <p> 13 <input type="radio" name="status" value="1" checked="checked">全て 14 <input type="radio" name="status" value="2">作業中 15 <input type="radio" name="status" value="3">完了 16 </p> 17 18 <h3>ID コメント 状態</h3> 19 <ul class="addTask-target"> 20 21 </ul> 22 23 <h2>新規タスクの追加</h2> 24 <input class="addTask-value" type="text" /> 25 <button class="addTask-trigger" type="button">追加</button> 26 <script src="js/main.js"></script> 27</body> 28</html> 29
Javascript
1 2'use strict'; 3 4 // 必要なDOM要素を取得。上から登録、空のリスト、登録用インプット 5 const addTaskTrigger = document.getElementsByClassName('addTask-trigger')[0]; 6 const addTaskTarget = document.getElementsByClassName('addTask-target')[0]; 7 const addTaskValue = document.getElementsByClassName('addTask-value')[0]; 8 9 //タスクを追加した時の挙動をaddTaskと定義 10 const addTask = task => { 11 // listItemと各ボタンを定義 p要素とボタン要素をHTMLに加える 12 const listItem = document.createElement('p'); 13 const removeButton = document.createElement('button'); 14 const addButton = document.createElement('button'); 15 16 // それぞれ作業中、削除という言葉をボタンに入れる 17 addButton.innerText = '作業中'; 18 removeButton.innerText = '削除'; 19 //ボタンを押したら以下の作業をする 20 removeButton.addEventListener('click', () => removeTask(removeButton)); 21 22 listItem.append(1); 23 listItem.innerText = task; 24 // 作業中ボタンを追加 25 listItem.append(addButton); 26 // 削除ボタンを追加 27 listItem.append(removeButton); 28 //入力タスクを表示 29 addTaskTarget.appendChild(listItem); 30 }; 31 32 // 追加ボタンに対して、タスク登録イベントを設定 33 addTaskTrigger.addEventListener('click', event => { 34 const task = addTaskValue.value; 35 addTask(task); 36 addTaskValue.value = ''; 37 }); 38
試したこと
・IDの部分に数字を出せないに関して
→const indexをfor文を使って定義してみたが上手く行かず
const index =for(let i =0; i < 99; i++)
・ID、コメント、状態を3つ同時に出せるように配列を使ってみたが
動作せず。
以上です。
お手数ですが宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/11 03:04
2020/06/11 03:28