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 相关文章推荐
强大的jquery插件jqeuryUI做网页对话框效果!简单
Apr 14 Javascript
JavaScript操作Oracle数据库示例
Mar 06 Javascript
jquery加载单文件vue组件的方法
Jun 20 jQuery
使用JavaScript实现表格编辑器(实例讲解)
Aug 02 Javascript
简单实现jQuery轮播效果
Aug 18 jQuery
AngularJS的$location使用方法详解
Oct 19 Javascript
js通过Date对象实现倒计时动画效果
Oct 27 Javascript
Vue 将后台传过来的带html字段的字符串转换为 HTML
Mar 29 Javascript
jQuery选择器之层次选择器用法实例分析
Feb 19 jQuery
Vue3 的响应式和以前有什么区别,Proxy 无敌?
May 20 Javascript
解决vue字符串换行问题(绝对管用)
Aug 06 Javascript
ant design vue嵌套表格及表格内部编辑的用法说明
Oct 28 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模板引擎Smarty的缓存使用总结
2014/04/24 PHP
PHP中Session可能会引起并发问题
2015/06/26 PHP
JS+PHP实现用户输入数字后显示最大的值及所在位置
2017/06/19 PHP
Symfony查询方法实例小结
2017/06/28 PHP
基于ThinkPHP5.0实现图片上传插件
2017/09/25 PHP
使用PHPWord生成word文档的方法详解
2019/06/06 PHP
javascript同步Import,同步调用外部js的方法
2008/07/08 Javascript
Boostrap模态窗口的学习小结
2016/03/28 Javascript
jQuery实现根据滚动条位置加载相应内容功能
2016/07/18 Javascript
jQuery EasyUI 页面加载等待及页面等待层
2017/02/06 Javascript
canvas实现图像截取功能
2017/02/06 Javascript
Vue.js在使用中的一些注意知识点
2017/04/29 Javascript
浅谈PDF.js使用心得
2018/06/07 Javascript
webpack手动配置React开发环境的步骤
2018/07/02 Javascript
详解Vue组件插槽的使用以及调用组件内的方法
2018/11/13 Javascript
30分钟用Node.js构建一个API服务器的步骤详解
2019/05/24 Javascript
微信小程序跳转到其他网页(外部链接)的实现方法
2019/09/20 Javascript
JS面向对象实现飞机大战
2020/08/26 Javascript
Openlayers学习之加载鹰眼控件
2020/09/28 Javascript
Python实现翻转数组功能示例
2018/01/12 Python
浅谈使用Python内置函数getattr实现分发模式
2018/01/22 Python
Python的垃圾回收机制详解
2019/08/28 Python
使用Python的turtle模块画国旗
2019/09/24 Python
安装完Python包然后找不到模块的解决步骤
2020/02/13 Python
Python如何根据时间序列数据作图
2020/05/12 Python
python退出循环的方法
2020/06/18 Python
.img/.hdr格式转.nii格式的操作
2020/07/01 Python
scrapy结合selenium解析动态页面的实现
2020/09/28 Python
经典c++面试题四
2015/05/14 面试题
Python如何实现单例模式
2016/06/03 面试题
介绍一下javax.servlet.Servlet接口及其主要方法
2015/11/30 面试题
最新英语专业学生求职信范文
2013/09/21 职场文书
预备党员学习十八届三中全会精神思想汇报
2014/09/13 职场文书
2015年惩防体系建设工作总结
2015/05/22 职场文书
六年级语文教学反思
2016/03/03 职场文书
用golang如何替换某个文件中的字符串
2021/04/25 Golang