Tuesday, November 04, 2008

form.onsubmit and form.submit()

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>form.onsubmit and form.submit()</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
</script>
</head>
<body>

<div id="content">
<form method="post">
javascript form.submit() 方法不会触发 form.onsubmit 事件。
<input id="message" name="message" size="30" type="text" />
</form>
</div>
<script type="text/javascript">
var form = document.forms[0];
form.addEventListener("submit", function(){alert('x');}, false);
setTimeout(function() {
alert('x');
// <input id="submit" type="submit" value="submit"/>
// TypeError: form.submit is not a function
// 如果form有一个id为submit的对象时,form.submit会指向此对象,从而覆盖了submit()方法,导致以上的类型错误。
form.submit();
}, 10000);
</script>

</body>
</html>

No comments :