我在watchandcode.com上做了实用的javascript课程,我的代码与教师的代码完全相同,但是它清除输入的部分在这里不起作用。
changeTodo: function () {
var changeTodoPositionInput = document.getElementById('changeTodoPositionInput').valueAsNumber;
var changeTodoTextInput = document.getElementById('changeTodoTextInput').value;
todoList.changeTodo(changeTodoPositionInput, changeTodoTextInput);
// THIS PART DOESN'T WORK
changeTodoPositionInput.value = '';
changeTodoTextInput.value = '';
}
该功能完成了它的工作,它只是最后两行不起作用。
答案 0 :(得分:2)
您正在尝试清除值而不是输入元素,您必须首先获取DOM元素:
var changeTodoPositionInput = document.getElementById('changeTodoPositionInput');
var changeTodoTextInput = document.getElementById('changeTodoTextInput');
然后从中获取值:
todoList.changeTodo(changeTodoPositionInput.valueAsNumber, changeTodoTextInput.value);
现在您可以使用以下方法清除两个输入的值:
changeTodoPositionInput.value = '';
changeTodoTextInput.value = '';
完整代码:
changeTodo: function() {
var changeTodoPositionInput = document.getElementById('changeTodoPositionInput');
var changeTodoTextInput = document.getElementById('changeTodoTextInput');
todoList.changeTodo(changeTodoPositionInput.valueAsNumber, changeTodoTextInput.value);
changeTodoPositionInput.value = '';
changeTodoTextInput.value = '';
}
希望这有帮助。
答案 1 :(得分:0)
你可以试试这个:
var changeTodoPositionInput = document.getElementById('changeTodoPositionInput')。value =“”;
var changeTodoTextInput = document.getElementById('changeTodoTextInput')。value =“”;