2017-04-16 59 views
0

我正在製作移動球程序。 當我把「onSubmit();」在表格的提交財產中, 什麼也沒有發生。但我想看看移動的球發生與功能執行。 在控制檯中沒有發生任何錯誤。funcname();並返回funcname();在form的onsubmint屬性中?

<form id="f" onsubmit="onSubmit();"><input type="submit" ></form> 

之後我修改了我的代碼。

<form id="f" onsubmit="return onSubmit();"><input type="submit" ></form> 

還沒有發生任何事。 找到書後,我發現放入函數返回false。 此代碼是我的第二個修改,並且正常工作。

function onSubmit() { 
    if (animate == false) { 
    var tev=setInterval(move, 500); 
    animate=true; 
    }else{ 
    clearInterval(tev); 
    animate=false; 
    } 
//this code was inserted in second modifycation. 
    return false; 
} 
<form id="f" onsubmit="return onSubmit();"><input type="submit" ></form> 

我的問題是兩件事。首先,funcname()之間有什麼不同?並返回funcname();在form的onsubmint屬性中? 二,在onSubmit函數中返回false的作用是什麼?

+0

如果您返回false,表單將不會提交。您需要返回true以使表單提交發生。這就是爲什麼'onSubmit'函數經常用於表單驗證。 –

回答

2

當您撥打function()時,您說要執行onSubmit功能。

當你說return function()你說要繼續提交取決於函數()的返回值。 如果函數()返回false,則提交不會繼續。

如果沒有條件滿足,您的情況返回false。然後提交將不會成功。

它主要用於驗證,例如,當您需要某些必填字段時,您可以返回false,除非沒有空值。

+1

謝謝你的解釋。我明白。 –

0

您需要返回,以便真/假得到傳遞給表單的提交事件(它會查找此事件,並在發生錯誤時阻止提交)。 而這就是根據你的職能角色,如果它必須返回一些東西或者只有沒有回報而被執行。

相關問題