2016-07-12 70 views
1

DEMO無法阻止提交表單驗證失敗時

<form method="post" action="forms/post.asp" onsubmit="return validate();"> 
    <input type="text" name="username" /> 
    <button type="submit" onclick="validate();">Button</button> 
</form> 

我做了它在其他網頁工作,但它根本不會現在什麼工作。有什麼建議麼?

$(document).ready(function(){ 
    function validate() { 
     return false; 
    } 
} 

回答

3

從事件屬性調用的函數必須在window對象的範圍。爲了解決您的問題移動功能外jQuery的document.ready處理程序:

function validate() { 
    return false; 
} 

$(document).ready(function(){ 
    // jquery code here... 
}); 

或者,刪除過時的事件完全屬性和使用不引人注目的JS來附上事件。正如你已經使用jQuery,這裏是如何做到這一點:

<form method="post" action="forms/post.asp"> 
    <input type="text" name="username" /> 
    <button type="submit">Button</button> 
</form> 
$(document).ready(function(){ 
    $('form').submit(function(e) { 
     var valid = true; 

     // validate your form here... 

     if (!valid) 
      e.preventDefault(); // stop the submission 
    }); 
}); 
+0

謝謝!我認爲有可能使用實際的jQuery完成這項工作,但不知道如何。 – Heraclitus

+0

對不起打擾你,但你知道我怎麼能在IE中做到這一點?我不得不爲IE9開發一些東西,它不會工作。謝謝 – Heraclitus

+0

以上兩個都應該在IE9中正常工作。這個錯誤可能值得開始一個新的問題 - 如果你有錯誤的話 –

相關問題