[轉載]慎用標籤 提交表單 [IE6無法提交表單][事件衝突]

我們都知道可以使用 [form].submit(); 來動態提交表單,

但使用點擊<a/>標籤來提交表單, 會出現什麼情況呢?

我們都知道, <a/>有個鏈接屬性 href , 而form也有一個頁面請求屬性 action, 當兩屬性同時存在時, 點擊<a/>當然會優先<a/>的href鏈接,

但如果是 <a href="javascript:;" ></a>, 又會是什麼情況呢? 實踐證明IE7.0+ , FF3.0+, Opera9.6+ 均能正確處理, 忽略<a/>的href, 執行表單的submit動作, 唯有 IE6 仍堅持着自己的原則, 只要有 href , 就只嘗試執行鏈接 href , 除非你的<a/>標籤中去掉 href屬性, 但去掉 href 你將發現IE 下將不會出現下劃線...

爲更好體會該問題, 可以複製以下代碼存爲文件IE6和其它瀏覽器下對比運行即可...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>anchor and form</title>
</head>
<form method='get' action="www.baidu.com">
<input value='' name='kw'/>
</form>
<a id="submit" href="javascript:;" style="color:#333" >提交</a>
<script type="text/javascript">
document.getElementById('submit').onclick = function(){
document.forms[0].submit();
}
</script>
</head>
<body>
</body>
</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章