MozTW 討論區 https://forum.moztw.org/ |
|
有關IE與firefox的javascript語法差異.... https://forum.moztw.org/viewtopic.php?f=2&t=11395 |
第 1 頁 (共 1 頁) |
發表人: | AndyJiang [ 2005-11-11, 23:38 ] |
文章主題 : | 有關IE與firefox的javascript語法差異.... |
請問 小第目前想寫符合W3標準的網頁 (以前寫的都只符合微軟的「標準」) ![]() 也已經安裝firefox及Mozilla來進行網頁測試, 但是在寫javascript過程遇到一個問題,所以想請教 在IE上執行的javascript 可以成功中斷submit動作的語法, 在firefox及Mozilla就不行。程式碼如下: function form1_onsubmit() { if ( something is false then ) { return false; //這裡要中斷submit動作,但firefox不會return false回去 } return true; //進行submit動作,在firefox 既使以經執行了if ()內的程式,還是會再執行 return true; } 請問在firefox及Mozill要如何改以上的程式才能符合所要求的動作? 以上問題請前輩們不吝賜教,謝謝。 |
發表人: | AndyJiang [ 2005-11-12, 11:44 ] |
文章主題 : | |
自問自答......... ![]() 找到原因了,以下列html為例: <form id="form1" method="post" action="" onsubmit="return form1_onsubmit();"> .... </form> IE的javascript直接將 form1物件拿來用,不會有問題 而firefox則需要先定義出一個物件變數來代表form1,才能使用: var fm = document.getElementById("form1"); 原來如此啊 ![]() 有錯誤歡迎糾正,謝謝 |
發表人: | james [ 2005-11-12, 11:52 ] |
文章主題 : | |
理論上,若條件成立執行 return 後,不會執行剩餘的程式碼。 建議重新檢查你的程式碼,或者使用 If...else statement 如下述方法一。 方法一 代碼: function form1_onsubmit() { if ( something is false then ) { .... return false; } else // 最好加上。否則上列程式碼若非 return something,執行if{}後便繼續執行其後之程式碼。 { .... return true; } } 方法二 代碼: function form1_onsubmit() {return (something is true)}
|
發表人: | AndyJiang [ 2005-11-14, 12:22 ] |
文章主題 : | |
感謝jams兄的指正 原來我貼的程式碼還漏貼else敘述 真不好意思 ![]() |
第 1 頁 (共 1 頁) | 所有顯示的時間為 UTC + 8 小時 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |