js函数名与form表单元素同名冲突的问题


Posted in Javascript onMarch 07, 2014

今天在导出Excel的时候用了Form 表单的input hidden 来区分导出和搜索。开始的时候js中的onClick事件的函数名 和 hidden 中的 id 命名一样。结果导致报错:调用函数的那一行对象不支持此属性。

找了很长时间都找不出原因,开始的时候一直以为是写错了某个字母,才发现js函数根本没有执行。后来没有办法直接调用了别的函数,发现就有用了,认为是函数名的原因,改了函数名才有用了。然后再将input中的id改成很函数名一样,又出现报错了。在没有下例验证之前,还一直以为是ThinkPHP模板解析的bug。因为有了如下示例,所以证实是js中的函数名不可以和元素中的id相同。

如下例:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>ceshi</title>
<script>
function a()
{
 document.getElementById('a').value="test";
 alert(document.getElementById('a').value);
 return false;
}
</script>
</head>
<body>
<form>
<input type="hidden" id="a" name="a" value="" />
<input type="button" value="excel" onClick="javascript:a();"/>
</form>
</body>
</html>

网页错误详细信息

用户代理: 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%20and%20Settings/Administrator/桌面/test.html

Javascript 相关文章推荐
javascript实现仿银行密码输入框效果的代码
Dec 13 Javascript
JavaScript中json对象和string对象之间相互转化
Dec 26 Javascript
一个简单的全屏图片上下打开显示网页效果示例
Jul 08 Javascript
jquery实现兼容IE8的异步上传文件
Jun 15 Javascript
javascript实现输出指定行数正方形图案的方法
Aug 03 Javascript
js实现二级菜单渐隐显示
Nov 03 Javascript
js实现页面a向页面b传参的方法
May 29 Javascript
AngularJS入门教程之ng-checked 指令详解
Aug 01 Javascript
深入理解 JavaScript 中的 JSON
Apr 06 Javascript
使用vue-router为每个路由配置各自的title
Jul 30 Javascript
JS桶排序的简单理解与实现方法示例
Nov 25 Javascript
vue自动添加浏览器兼容前后缀操作
Aug 13 Javascript
javascript(js)的小数点乘法除法问题详解
Mar 07 #Javascript
jquery中常用的函数和属性详细解析
Mar 07 #Javascript
jquery 操作两个select实现值之间的互相传递
Mar 07 #Javascript
JS判断文本框内容改变事件的简单实例
Mar 07 #Javascript
使用js判断TextBox控件值改变然后出发事件
Mar 07 #Javascript
jquery1.10给新增元素绑定事件的方法
Mar 06 #Javascript
jquery单行文字向上滚动效果示例
Mar 06 #Javascript
You might like
一些关于PHP的知识
2006/11/17 PHP
让你的WINDOWS同时支持MYSQL4,MYSQL4.1,MYSQL5X
2006/12/06 PHP
php实现在线生成条形码示例分享(条形码生成器)
2013/12/30 PHP
php+mysql实现用户注册登陆的方法
2015/01/03 PHP
40个新鲜出炉的jQuery 插件和免费教程[上]
2012/07/24 Javascript
利用了jquery的ajax实现二级联互动菜单
2013/12/02 Javascript
Eclipse编辑jsp、js文件时卡死现象的解决办法汇总
2016/02/02 Javascript
JS/jQ实现免费获取手机验证码倒计时效果
2016/06/13 Javascript
AngularJS 路由详解和简单实例
2016/07/28 Javascript
基于bootstrap-datetimepicker.js不支持IE8的快速解决方法
2016/11/07 Javascript
js仿京东轮播效果 选项卡套选项卡使用
2017/01/12 Javascript
JavaScript中在光标处插入添加文本标签节点的详细方法
2017/03/22 Javascript
AngularJS+bootstrap实现动态选择商品功能示例
2017/05/17 Javascript
ionic3+Angular4实现接口请求及本地json文件读取示例
2017/10/11 Javascript
微信小程序switch组件使用详解
2018/01/31 Javascript
angularjs数组判断是否含有某个元素的实例
2018/02/27 Javascript
vue通过点击事件读取音频文件的方法
2018/05/30 Javascript
layui中table表头样式修改方法
2018/08/15 Javascript
解决layui追加或者动态修改的表单元素“没效果”的问题
2019/09/18 Javascript
微信小程序实现蓝牙打印
2019/09/23 Javascript
微信小程序自定义组件components(代码详解)
2019/10/21 Javascript
JS如何在不同平台实现多语言方式
2020/07/16 Javascript
Python利用字典将两个通讯录文本合并为一个文本实例
2018/01/16 Python
python pandas读取csv后,获取列标签的方法
2018/11/12 Python
java判断三位数的实例讲解
2019/06/10 Python
Pytorch模型转onnx模型实例
2020/01/15 Python
Python imutils 填充图片周边为黑色的实现
2020/01/19 Python
Oracle里面常用的数据字典有哪些
2014/02/14 面试题
测量实习生自我鉴定
2013/09/19 职场文书
物业保安员岗位职责
2014/03/14 职场文书
详细的本科生职业生涯规划范文
2014/09/16 职场文书
反对形式主义、官僚主义、享乐主义和奢靡之风整改措施
2014/09/17 职场文书
丽江古城导游词
2015/02/03 职场文书
学生党支部工作总结2015
2015/05/26 职场文书
会议营销主持词
2015/07/03 职场文书
Mysql数据库事务的脏读幻读及不可重复读详解
2022/05/30 MySQL