首頁  >  文章  >  web前端  >  js函數名稱與form表單元素同名衝突的問題_javascript技巧

js函數名稱與form表單元素同名衝突的問題_javascript技巧

WBOY
WBOY原創
2016-05-16 16:56:391163瀏覽

今天在導出Excel的時候用了Form 表單的input hidden 來區分導出和搜尋。開始的時候js中的onClick事件的函數名稱 和 hidden 中的 id 命名一樣。結果導致報錯:呼叫函數的那一行物件不支援此屬性。

找了很久都找不出原因,一開始的時候一直以為是寫錯了某個字母,才發現js函數根本沒有執行。後來沒有辦法直接呼叫了別的函數,發現就有用了,認為是函數名的原因,改了函數名才有用了。然後再將input中的id改成很函數名稱一樣,又出現報錯了。在沒有下例驗證之前,一直以為是ThinkPHP模板解析的bug。因為有如下範例,證實是js中的函數名稱不可以和元素中的id相同。

如下例:

複製程式碼 程式碼如下:



ceshi
<script><BR>function a()<BR>{<BR> document.getElementById('a').value="test";<BR> alert(document.getElementById('a').value);<BR> return false ;<BR>}<BR></script>









網頁錯誤詳細資料
用戶代理: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; CIBA; .NET CLR 2.0.50727)

時間戳: Thu, 27 Jan 2011 13:30:09 UTC 🎜>
訊息: 物件不支援此屬性或方法

行: 17

字元: 1
程式碼: 0
URI:file:///C:/Documents and Settings/Administrator/桌面/test.html

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn