好的,基于我将onsubmit
附加到表单时的理解,将运行已设置的代码。所以在本质上是以下代码:
function init() {
'use strict';
document.getElementById('saveForm').onSubmit = saveTodo();
}
window.onload = init;
应该触发saveTodo - 函数。但是我的印象是,只有在提交表单时才会执行此操作。这是saveTodo - 函数:
function saveTodo() {
'use strict';
console.log('saveTodo()');
return false;
}
然而,当我刷新浏览器时,即使没有单击表单提交,也会调用此函数。
这是onsubmit的正常行为吗?
这是html表单:
<form id="saveForm" name="saveForm">
<div>
<label for="todo">Give a task:</label>
<input type="text" name="todo" id="todo" />
</div>
<div>
<input type="submit" name="add" id="add" value="Add" />
</div>
</form>
答案 0 :(得分:1)
document.getElementById('saveForm').onSubmit = saveTodo;
答案 1 :(得分:0)
啊,看起来问题是一个愚蠢的错字。而不是使用onSubmit
语法onsubmit
。所以下面的代码工作:
function init() {
'use strict';
document.getElementById('saveForm').onsubmit = saveTodo;
}
感谢 rps
注意到括号。