以下のコードを使用すると、画面に何も出力されません。
グローバル配列が呼び出されtasks[]
、これが実行しようとしている関数です。
function addTask() {
'use strict';
var task = document.getElementById('task');
var outputTask = document.getElementById('taskOutput');
var outputList = document.getElementById('outputList');
var taskMessage = '';
if (task.value) {
tasks[tasks.length] = task;
taskMessage = 'You have ' + tasks.length + ' task(s) in your to-do list.';
if(output.textContent !== undefined) {
outputTask.textContent = taskMessage;
} else {
outputTask.innerText = taskMessage;
}
for (var i = 0, count = tasks.length; i <= count; i++) {
var listItem = document.createElement('h3');
var textNode = document.createTextNode(tasks[i]);
listItem.appendChild(textNode);
outputList.appendChild(listItem);
}
}// End task.value IF.
return false;
}// end addTask() function
JavaScript がアクセスしている HTML は次のとおりです。タスク入力フィールドに値を入力して送信を押すと、outputList div 内の画面への出力が H3 として期待されます。
<form id="theForm" name="theForm" />
<fieldset>
<legend>Enter the starting and ending dates of the task</legend>
<label for="start">Start</label>
<input type="text" name="start" id="start" placeholder="MM/DD/YYYY or Today" required />
<label for="end">End</label>
<input type="text" name="end" id="end" placeholder="MM/DD/YYYY" required />
</fieldset>
<fieldset><legend>Enter a Task For This Time Period</legend>
<div>
<label for="task">Task</label>
<input type="text" name="task" id="task" required />
</div>
</fieldset>
<input type="submit" value="Add It!" id="submit" />
</form>
</div>
<div id="output"></div>
<div id="taskOutput"></div>
<div id="outputList"></div>