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 写类方式之七
Jul 05 Javascript
比较简单的异步加载JS文件的代码
Jul 18 Javascript
基于jQuery的ajax功能实现web service的json转化
Aug 29 Javascript
JQuery与iframe交互实现代码
Dec 24 Javascript
jquery ajax 同步异步的执行示例代码
Jun 23 Javascript
不想让浏览器运行javascript脚本的方法
Nov 20 Javascript
浅谈JavaScript中的this指针和引用知识
Aug 05 Javascript
javascript设计模式之单体模式学习笔记
Feb 15 Javascript
基于Bootstrap分页的实例讲解(必看篇)
Jul 04 Javascript
Vue源码分析之Vue实例初始化详解
Aug 25 Javascript
使用VUE实现在table中文字信息超过5个隐藏鼠标移到时弹窗显示全部
Sep 16 Javascript
vue+Element中table表格实现可编辑(select下拉框)
May 21 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
ThinkPHP3.1的Widget新用法
2014/06/19 PHP
PHP中的session安全吗?
2016/01/22 PHP
CI框架扩展系统核心类的方法分析
2016/05/23 PHP
php表单习惯用的正则表达式
2017/10/11 PHP
javascript与webservice的通信实现代码
2010/12/25 Javascript
jquery的flexigrid无法显示数据提示获取到数据
2013/07/19 Javascript
js的Prototype属性解释及常用方法
2014/05/08 Javascript
解决JS无法调用Controller问题的方法
2015/12/31 Javascript
AngularJS基础 ng-focus 指令简单示例
2016/08/01 Javascript
js获取页面引用的css样式表中的属性值方法(推荐)
2016/08/19 Javascript
微信小程序 向左滑动删除功能的实现
2017/03/10 Javascript
基于JS脚本语言的基础语法详解
2017/07/22 Javascript
原生JS上传大文件显示进度条 php上传文件代码
2020/03/27 Javascript
nodejs实现OAuth2.0授权服务认证
2017/12/27 NodeJs
react native基于FlatList下拉刷新上拉加载实现代码示例
2018/09/30 Javascript
从零开始用electron手撸一个截屏工具的示例代码
2018/10/10 Javascript
js实现无缝滚动双图切换效果
2019/07/09 Javascript
使用 Angular RouteReuseStrategy 缓存(路由)组件的实例代码
2019/11/01 Javascript
实现一个Vue自定义指令懒加载的方法示例
2020/06/04 Javascript
[05:08]顺网杯ISS-DOTA2赛歌 少女偶像Lunar青春演绎
2013/12/05 DOTA
python任务调度实例分析
2015/05/19 Python
python实现识别手写数字 python图像识别算法
2020/03/23 Python
python反编译学习之字节码详解
2019/05/19 Python
html5-Canvas可以在web中绘制各种图形
2012/12/26 HTML / CSS
SkinCeuticals官网:美国药妆品牌
2018/04/19 全球购物
英国家具、照明、家居用品网上商店:Wayfair.co.uk
2020/02/13 全球购物
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
银行会计业务的个人自我评价
2013/11/02 职场文书
优秀的毕业生的自我评价
2013/12/12 职场文书
促销活动总结怎么写
2014/06/25 职场文书
公共场所标语
2014/06/30 职场文书
找工作求职信
2014/07/07 职场文书
物理分数没达标检讨书
2014/09/13 职场文书
销售辞职信范文
2015/03/02 职场文书
中秋节主题班会
2015/08/14 职场文书
创业计划书之小型广告公司
2019/10/22 职场文书