DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> js表單提交和submit提交的區別實例分析
js表單提交和submit提交的區別實例分析
編輯:關於JavaScript     

本文實例分析了js表單提交和submit提交的區別。分享給大家供大家參考,具體如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
</head>
<body>
<script>
function test()
{
  document.getElementById("myform").submit();  
  alert(11);
}
</script>
<form name="myfrom" id="myform" method="get" action="b.php">
<input type="text" name="pwd" value="" />
<input type="submit" name="sub" value="111" />
<input type="button" name="btn" value="btn" onclick="test()" />
</form>
</body>
</html>

注意:get方式提交表單時 action裡面不能用url傳值, post則可以這樣傳

js提交和submit按鈕提交的區別:
   
1. js提交表單時不會帶上 submit 按鈕的值(因為沒有被單擊) 所有浏覽器

2. input 回車提交 w3c浏覽器會帶上submit按鈕的值,ie6則不會帶

解決辦法:

增加一個hidden域,用這個來判斷,無論用哪種方式提交都會有值

submit按鈕上綁定提交事件:

即:<input type="submit" name="btn" value="btn" onclick="test()" />
都會帶上submit的值, 用js提交都檢測不到onsubmit狀態
w3c: 提交一次
ie6: 分兩次提交,先js在form提交

解決辦法:

如果按鈕為submit則 檢測時用onsubmit事件檢測

如果按鈕為button,則檢測通過後在觸發submit事件

一定不要用js提交表單,然後又用onsubmit去檢測

單純的用js提交表單, alert, ff下阻塞表單的提交,而其他浏覽

希望本文所述對大家JavaScript程序設計有所幫助。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved