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 相关文章推荐
js脚本学习 比较实用的基础
Sep 07 Javascript
javascript闭包的高级使用方法实例
Jul 04 Javascript
随鼠标上下滚动的jquery代码
Dec 05 Javascript
js opener的使用详解
Jan 11 Javascript
jquery中JSON的解析方式
Mar 16 Javascript
JS实现屏蔽shift,Ctrl,alt等功能键的方法
Jun 01 Javascript
javascript事件模型介绍
May 31 Javascript
ES6新特性四:变量的解构赋值实例
Apr 21 Javascript
JavaScript判断日期时间差的实例代码
Mar 01 Javascript
微信小程序自定义弹出模态框禁止底部滚动功能
Mar 09 Javascript
vue cli4.0项目引入typescript的方法
Jul 17 Javascript
用几道面试题来看JavaScript执行机制
Apr 30 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
用sql命令修改数据表中的一个字段为非空(not null)的语句
2010/06/04 PHP
深入解析phpCB批量转换的代码示例
2013/06/27 PHP
PHP框架Swoole定时器Timer特性分析
2014/08/19 PHP
微信支付开发告警通知实例
2016/07/12 PHP
PHP入门教程之字符串处理技巧总结(转换,过滤,解析,查找,截取,替换等)
2016/09/11 PHP
Prototype源码浅析 String部分(三)之HTML字符串处理
2012/01/15 Javascript
JavaScript常用对象的方法和属性小结
2012/01/24 Javascript
Mac地址验证的javascript代码
2013/11/09 Javascript
妙用Bootstrap的 popover插件实现校验表单提示功能
2016/08/29 Javascript
javascript实现根据函数名称字符串动态执行函数的方法示例
2016/12/28 Javascript
新闻上下滚动jquery 超简洁(必看篇)
2017/01/21 Javascript
JS实现去除数组中重复json的方法示例
2017/12/21 Javascript
JavaScript 中定义函数用 var foo = function () {} 和 function foo()区别介绍
2018/03/01 Javascript
react native 获取地理位置的方法示例
2018/08/28 Javascript
详解webpack打包第三方类库的正确姿势
2018/10/20 Javascript
提升node.js中使用redis的性能遇到的问题及解决方法
2018/10/30 Javascript
关于JavaScript 数组你应该知道的事情(推荐)
2019/04/10 Javascript
浅谈vuex中store的命名空间
2019/11/08 Javascript
js实现百度淘宝搜索功能
2020/02/17 Javascript
javascript+css实现俄罗斯方块小游戏
2020/06/28 Javascript
修改NPM全局模式的默认安装路径的方法
2020/12/15 Javascript
[01:00:30]TFT vs VGJ.T Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
Python字符串处理函数简明总结
2015/04/13 Python
使用Python脚本来控制Windows Azure的简单教程
2015/04/16 Python
Python实现Sqlite将字段当做索引进行查询的方法
2016/07/21 Python
python tensorflow基于cnn实现手写数字识别
2018/01/01 Python
Python Numpy:找到list中的np.nan值方法
2018/10/30 Python
Python银行系统实战源码
2019/10/25 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
2020/05/19 Python
python实现发送带附件的邮件代码分享
2020/09/22 Python
大二学期个人自我评价
2014/01/13 职场文书
七一党建活动方案
2014/01/28 职场文书
中国梦我的梦演讲稿
2014/04/23 职场文书
2014年除四害工作总结
2014/12/06 职场文书
祝寿主持词
2015/07/02 职场文书
岗位聘任协议书
2015/09/21 职场文书