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 相关文章推荐
JQuery1.4+ Ajax IE8 内存泄漏问题
Oct 15 Javascript
浅谈关于JavaScript的语言特性分析
Apr 11 Javascript
js创建对象的方式总结
Jan 10 Javascript
js实现在网页上简单显示时间的方法
Mar 02 Javascript
jQuery+ajax实现无刷新级联菜单示例
May 21 Javascript
javascript精确统计网站访问量实例代码
Dec 19 Javascript
jQuery获取table行数并输出单元格内容的实现方法
Jun 30 Javascript
prototype.js简单实现ajax功能示例
Oct 18 Javascript
Electron 如何调用本地模块的方法
Feb 01 Javascript
vue-cli 项目打包完成后运行文件路径报错问题
Jul 19 Javascript
layui 上传文件_批量导入数据UI的方法
Sep 23 Javascript
Vue实现简单的拖拽效果
Aug 25 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 用数组降低程序的时间复杂度
2009/12/04 PHP
php实现遍历目录并删除指定文件中指定内容
2015/01/21 PHP
php三种实现多线程类似的方法
2015/10/30 PHP
php依赖注入知识点详解
2019/09/23 PHP
PHP 观察者模式深入理解与应用分析
2019/09/25 PHP
在第一个input框内输入内容.textarea自动得到第一个文件框的值的javascript代码
2007/04/20 Javascript
js实现DIV的一些简单控制
2007/06/04 Javascript
33种Javascript 表格排序控件收集
2009/12/03 Javascript
JavaScript Distilled 基础知识与函数
2010/04/07 Javascript
javascript基础知识大集锦(一) 推荐收藏
2011/01/13 Javascript
JS去除数组重复值的五种不同方法
2013/09/06 Javascript
js字母大小写转换实现方法总结
2013/11/13 Javascript
轻松创建nodejs服务器(6):作出响应
2014/12/18 NodeJs
8个超实用的jQuery功能代码分享
2015/01/08 Javascript
举例详解AngularJS中ngShow和ngHide的使用方法
2015/06/19 Javascript
JavaScript中的函数(二)
2015/12/23 Javascript
js实现可旋转的立方体模型
2016/10/16 Javascript
详解JS中的this、apply、call、bind(经典面试题)
2017/09/19 Javascript
react 应用多入口配置及实践总结
2018/10/17 Javascript
一文快速详解前端框架 Vue 最强大的功能
2019/05/21 Javascript
javascript中的this作用域详解
2019/07/15 Javascript
vue路由传参三种基本方式详解
2019/12/09 Javascript
js数据类型转换与流程控制操作实例分析
2019/12/18 Javascript
VSCode launch.json配置详细教程
2020/06/18 Javascript
利用JavaScript模拟京东按键输入功能
2020/12/01 Javascript
Python中使用urllib2防止302跳转的代码例子
2014/07/07 Python
Python内置模块logging用法实例分析
2018/02/12 Python
Ubuntu下Python2与Python3的共存问题
2018/10/31 Python
selenium+Chrome滑动验证码破解二(某某网站)
2019/12/17 Python
python读取图像矩阵文件并转换为向量实例
2020/06/18 Python
初级会计求职信范文
2014/02/15 职场文书
班班通校本培训方案
2014/03/12 职场文书
大学生新学期计划书
2014/04/28 职场文书
信仰心得体会
2014/09/05 职场文书
承诺书范本大全
2015/05/04 职场文书
2015年大学生暑期实习报告
2015/07/13 职场文书