文章目錄
- HTML DOM submit() 方法
- 說明
- HTML DOM onsubmit 事件控制代碼
- 文法
- 說明
問題:
設想在頁面開啟後執行某個js函數,當然可以放在body的onload中,格式如下:
<body onload="bb()">
但對於js的理解,在頁面載入前是會執行一遍頁面中的js代碼的,類推出下面的設想:
在<script></script> 之間的代碼會執行的,如下的方式,則會自動執行alert();
<script type="text/javascript">alert(123);</script>
則也如下實行可執行函數:
<script type="text/javascript">
function aa(){
alert("aaaaaa");
}
function bb(){
alert("bbbbbb");
}
aa();
</script>
由此也可以執行aa()函數的,只是執行與載入body之前運行此函數,要早於body中的bb(),執行結果為先彈出aaaaa後彈出bbbbbb。測試相符。
另外通過下面的document.write()的形式也可以出發bb()函數的執行:效果與直接調用bb()相同;
<script type="text/javascript">
document.write('<script type="text/javascript">');
document.write("bb()");
document.write('<\/script>');
</script>
理解,對於js運行機理不夠清楚,加深理解,多寫測試,多總結,多筆記。
另外關於submit和onsubmit這兩個的區別:
HTML DOM submit() 方法
http://www.w3school.com.cn/htmldom/met_form_submit.asp
文法
formObject.submit()說明該方法提交表單的方式與使用者單擊 Submit 按鈕一樣,但是表單的 onsubmit 事件控制代碼不會被調用。
HTML DOM onsubmit 事件控制代碼
http://www.w3school.com.cn/htmldom/prop_form_onsubmit.asp 定義和用法
在提交表單時調用的事件控制代碼。
文法form.onsubmit說明
Form 對象的 onsubmit 屬性指定了一個事件控制代碼函數。當使用者單擊了表單中的 Submit 按鈕而提交一個表單時,就會調用這個事件控制代碼函數。注意,當調用方法Form.submit() 時,該處理器函數不會被調用。
如果 onsubmit 控制代碼返回 fasle,表單的元素就不會提交。如果該函數返回其他值或什麼都沒有返回,則表單會被提交。
Javascript在頁面載入時的執行順序
特別建議閱讀此文:
JavaScript運行機制淺探JavaScript程式執行順序問題總結 JavaScript多線程編程簡介