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使用IEEE 标准进行二进制浮点运算产生莫名错误的解决方法
May 28 Javascript
解析JavaScript中的不可见数据类型
Dec 02 Javascript
Javascript中匿名函数的多种调用方式总结
Dec 06 Javascript
js post提交调用方法
Feb 12 Javascript
indexOf 和 lastIndexOf 使用示例介绍
Sep 02 Javascript
js精美的幻灯片画集特效代码分享
Aug 29 Javascript
Bootstrap3 多选和单选框(checkbox)
Dec 29 Javascript
Angular中$broadcast和$emit的使用方法详解
May 22 Javascript
JavaScript插入排序算法原理与实现方法示例
Aug 06 Javascript
实例讲解JavaScript截取字符串
Nov 30 Javascript
微信小程序wx.getUserInfo授权获取用户信息(头像、昵称)的实现
Aug 19 Javascript
Vue + iView实现Excel上传功能的完整代码
Jun 22 Vue.js
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生成器简单实例
2015/05/13 PHP
Zend Framework教程之路由功能Zend_Controller_Router详解
2016/03/07 PHP
深入了解PHP中的Array数组和foreach
2016/11/06 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
2018/06/14 PHP
CentOS7.0下安装PHP5.6.30服务的教程详解
2018/09/29 PHP
jquery.ui.progressbar 中文文档
2009/11/26 Javascript
Jquery 实现Tab效果 思路是js思路
2010/03/02 Javascript
用js的for循环获取radio选中的值
2013/10/21 Javascript
AngularJS仿苹果滑屏删除控件
2016/01/18 Javascript
返回函数的JavaScript函数
2016/06/14 Javascript
纯js三维数组实现三级联动效果
2017/02/07 Javascript
Vue2.0 UI框架ElementUI使用方法详解
2017/04/14 Javascript
AngularJS使用ng-repeat遍历二维数组元素的方法详解
2017/11/11 Javascript
JS计算两个时间相差分钟数的方法示例
2018/01/10 Javascript
vue项目关闭eslint校验
2018/03/21 Javascript
微信小程序websocket聊天室的实现示例代码
2019/02/12 Javascript
微信小程序实现的canvas合成图片功能示例
2019/05/03 Javascript
JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去
2019/07/23 Javascript
layUI实现列表查询功能
2019/07/27 Javascript
VSCode插件安装完成后的配置(常用配置)
2020/08/24 Javascript
用pandas中的DataFrame时选取行或列的方法
2018/07/11 Python
完美解决Python matplotlib绘图时汉字显示不正常的问题
2019/01/29 Python
python实现网站用户名密码自动登录功能
2019/08/09 Python
在django admin详情表单显示中添加自定义控件的实现
2020/03/11 Python
python如何利用Mitmproxy抓包
2020/10/10 Python
CSS3属性选择符介绍
2008/10/17 HTML / CSS
使用CSS3中的calc()属性来以算式表达尺寸数值
2016/06/06 HTML / CSS
HTML5里autofocus自动聚焦属性使用介绍
2016/06/22 HTML / CSS
前端面试必备之html5的新特性
2017/09/05 HTML / CSS
广州一家公司的.NET面试题
2016/06/11 面试题
学校联谊协议书
2014/09/16 职场文书
学校元旦晚会开场白
2014/12/14 职场文书
离职告别感言
2015/08/04 职场文书
2016年大学迎新工作总结
2015/10/14 职场文书
CSS font-variation 可变字体的魅力(实例详解)
2022/03/03 HTML / CSS
前端canvas中物体边框和控制点的实现示例
2022/08/05 Javascript