![](/img/trans.png)
[英]what is the meaning of onsubmit="return false" ? why onsubmit="false" not working? what is the difference between them?
[英]What is the meaning of onsubmit="return false"? (JavaScript, jQuery)
我知道提交表單時會發生 onsubmit 事件。
通常,我們在 onsubmit 事件上調用一個方法,例如<form action="" onsubmit="myfunction()">
。
今天我看到了這個, "<form action="" onsubmit="return false">"
。 它是如何工作的? 我不明白onsubmit="return false"
的含義是什么。
PS:我在學習 Ajax 時發現了這一點。 這是一個教程,它解釋了如何在不刷新頁面的情況下將數據提交到數據庫。
這基本上是為了通過 JavaScript 處理表單提交。
例如-用於驗證目的
查看下面的代碼,看看它是如何有益的:
<script language="JavaScript">
myFunctionName() {
if (document.myForm.myText.value == '')
return false;
// When it returns false - your form will not submit and will not redirect too
else
return true;
// When it returns true - your form will submit and will redirect
// (actually it's a part of submit) id you have mentioned in action
}
</script>
<form name="myForm" onSubmit="return myFunctionName()">
<input type="text" name="myText">
<input type="submit" value="Click Me">
</form>
如果您使用按鈕而不是提交,就像我下面的情況一樣:
<form name="myForm" onSubmit="myFunctionName(); return false">
<input type="text" name="myText">
<input type="button" value="Click Me" onclick="myFunctionName()">
</from>
這有效地防止了表單在任何情況下提交,除了在腳本控制下(通過 form.submit(),它不會觸發提交事件)
<\/blockquote>參考:Query in Action 第三版(影響事件傳播和語義動作,第 143 頁)
根據
HTML 標准<\/a>,
onsubmit<\/code>是事件處理程序的名稱<\/a>。
事件處理程序內容屬性被視為腳本<\/a>。 該腳本將用於處理相關事件。 在“事件處理程序處理算法”的第 5 步中,它說“處理返回值如下”<\/a> :
如果事件是 BeforeUnloadEvent 對象並且事件的類型是 beforeunload
在這種情況下,事件處理程序 IDL 屬性的類型將是 OnBeforeUnloadEventHandler,因此返回值將被強制轉換為 null 或 DOMString。<\/li>
- 如果返回值不為空,則:
設置事件的取消標志。<\/li>
- 如果 event 的 returnValue 屬性值為空字符串,則設置 event 的 returnValue 屬性值為返回值。<\/li><\/ul><\/li><\/ul><\/li>
- 如果特殊錯誤事件處理為真
如果返回值為真,則設置事件的取消標志。<\/li><\/ul><\/li>
- 否則
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.