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 相关文章推荐
url 编码 js url传参中文乱码解决方案
Apr 11 Javascript
使用Math.floor与Math.random取随机整数的方法详解
May 07 Javascript
超链接的禁用属性Disabled使用示例
Jul 31 Javascript
js代码实现无缝滚动(文字和图片)
Aug 20 Javascript
Bootstrop实现多级下拉菜单功能
Nov 24 Javascript
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
Dec 14 Javascript
js常见遍历操作小结
Jun 06 Javascript
使用Easyui实现查询条件的后端传递并自动刷新表格的两种方法
Sep 09 Javascript
小程序实现上下移动切换位置
Sep 23 Javascript
vue动态路由:路由参数改变,视图不更新问题的解决
Nov 05 Javascript
微信小程序自定义纯净模态框(弹出框)的实例代码
Mar 09 Javascript
js作用域及作用域链工作引擎
Jul 07 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编程中的__clone()方法使用详解
2015/11/27 PHP
php大小写转换函数(strtolower、strtoupper)用法介绍
2017/11/17 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
TP3.2框架分页相关实现方法分析
2020/06/03 PHP
获取客户端电脑日期时间js代码(jquery)
2012/09/12 Javascript
Jquery $.getJSON 在IE下的缓存问题解决方法
2014/10/10 Javascript
基于replaceChild制作简单的吞噬特效
2015/09/21 Javascript
js window对象属性和方法相关资料整理
2015/11/11 Javascript
jquery实现右侧栏菜单选择操作
2016/03/04 Javascript
使用CSS+JavaScript或纯js实现半透明遮罩效果的实例分享
2016/05/09 Javascript
jQuery on()方法绑定动态元素的点击事件实例代码浅析
2016/06/16 Javascript
让浏览器崩溃的12行JS代码(DoS攻击分析及防御)
2016/10/10 Javascript
Angular学习笔记之angular的$filter服务浅析
2016/11/12 Javascript
bootstrap模态框跳转到当前模板页面 框消失了而背景存在问题的解决方法
2020/11/30 Javascript
基于js实现的限制文本框只可以输入数字
2016/12/05 Javascript
干货!教大家如何选择Vue和React
2017/03/13 Javascript
微信小程序开发之toast提示插件使用示例
2017/06/08 Javascript
Vue手把手教你撸一个 beforeEnter 钩子函数
2018/04/24 Javascript
基于vue-element组件实现音乐播放器功能
2018/05/06 Javascript
浅谈如何使用webpack构建多页面应用
2018/05/30 Javascript
vue  directive定义全局和局部指令及指令简写
2018/11/20 Javascript
微信小程序-可移动菜单的实现过程详解
2019/06/24 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
Python 迭代器与生成器实例详解
2017/05/18 Python
Python多线程处理实例详解【单进程/多进程】
2019/01/30 Python
Python StringIO如何在内存中读写str
2020/01/07 Python
python中scipy.stats产生随机数实例讲解
2021/02/19 Python
阿迪达斯奥地利官方商城:adidas.at
2016/10/16 全球购物
高中毕业的自我鉴定
2013/12/09 职场文书
网上书店创业计划书
2014/01/12 职场文书
信用社员工先进事迹材料
2014/02/04 职场文书
机关干部三严三实心得体会
2014/10/13 职场文书
2015年英语教研组工作总结
2015/05/23 职场文书
新娘父亲婚礼致辞
2015/07/27 职场文书
创业开店,这样方式更合理
2019/08/26 职场文书
OpenCV 图像梯度的实现方法
2021/07/25 Python