TypeError document.getElementById(...) is null错误原因
今天手写了一个简单的页面做测试用,写完js部分总是报 TypeError document.getElementById(...) is null 这个错误,代码看了几遍,语法上没找着什么错误,没办法,就在互联网上搜索了一下,才发现 document.getElementById 这个根据id找节点的语法写法还是有点讲究的,具体如下:
(1)如果写在 id 所在节点的前面,比如 head 块中,则要如下写法:
window.onload=function(){
......js代码
}
以上代码的意思是在html元素加载完后再运行js
(2)写在 id 所在节点的后面,不然就会报 TypeError: document.getElementById(...) is null 这种找不到节点的错误。
jquery代码写多了就容易忽视一些js的细节问题,记录一笔,以备后忘。
相关推荐
-
TypeError document.getElementById(...) is null错误原因
今天手写了一个简单的页面做测试用,写完js部分总是报 TypeError document.getElementById(...) is null 这个错误,代码看了几遍,语法上没找着什么错误,没办法,就在互联网上搜索了一下,才发现 document.getElementById 这个根据id找节点的语法写法还是有点讲究的,具体如下: (1)如果写在 id 所在节点的前面,比如 head 块中,则要如下写法: 复制代码 代码如下: window.onload=function(){ .....
-
document.getElementById为空或不是对象的解决方法
1. 'null'为空或不是对象: <script type="text/javascript"> 里面加个defer=true属性试试看, 即:<script type="text/javascript" defer=true> 2. document.getElementById为null 原因: var titab=document.getElementById("titletab");没有取到对象 解决办法: 1.
-
浅谈vue中document.getElementById()拿到的是原值的问题
问题 两个界面都有id="test"的div,内容不同,路由切换的时候document.getElementById()拿到的是原界面的值. 问题代码 // 页面1 <div id="test">aaa</div> // 页面2 <div id="test">bbb</div> // 路由切换如下: <transition name="card-fade"> <
-
js中document.getElementByid、document.all和document.layers区分介绍
document.all是IE 4.0及以上版本的专有属性,是一个表示当前文档的所有对象的娄组,不仅包括页面上可见的实体对象,还包括一些不可见的对象,比如html注释等等.在document.all数组里面,元素不分层次,是按照其在文档中出现的先后顺序,平行地罗列的.所以可以用数字索引来引用到任何一个元素.但比较常用的是用对象id来引用一个特定的对象,比如document.all["element"]这样. document.layers是Netscape 4.x专有的属性,是一个代表
-
document.getElementById介绍
把你的大脑当做浏览器执行下面的代码两次,分别是IE6和IE9: 复制代码 代码如下: function testFunc(){ alert('test') } $(function(){ var g = document.getElementById , w = window.testFunc ; //g alert(typeof(g)); alert(String(g)); alert(g instanceof Object); alert(g instanceof Function); //
-
各浏览器对document.getElementById等方法的实现差异解析
所有Web前端同仁对 document.getElementById 都非常熟悉了.开发过程中经常需要用其获取页面id为xx的元素,自从元老级JS库Prototype流行后,都喜欢这么简写它 复制代码 代码如下: // 方式1 function $(id){ return document.getElementById(id); } 有没有人想过为什么要这么写,而不用下面的方式写呢? 复制代码 代码如下: // 方式2 var $ = document.getElementById; 这么写的$
-
JS中的form.submit()不能提交表单的错误原因
直接上代码把: 复制代码 代码如下: <div id="register"> <h4>会员注册</h4> <div class="formdiv"> <form method="post" action="register.php?action=register" name="register" id="r
-
form.submit()不能提交表单的错误原因及解决方法
直接上代码把: <div id="register"> <h4>会员注册</h4> <div class="formdiv"> <form method="post" action="register.php?action=register" name="register" id="registerForm"> <dl&g
-
Microsoft VBScript 编译器错误 错误原因 代码大全
Microsoft VBScript 编译器错误 错误 '' 缺少语句 ActiveServerPages,ASP0126(0x80004005)-->找不到包含文件 MicrosoftOLEDBProviderforODBCDrivers(0x80040E21)-->sql语句出错(数据类型不匹配或表名(字段名)错误或表处于编辑状态,或表不存在于conn打开的数据库中) MicrosoftOLEDBProviderforODBCDrivers(0x80040E14)-->sql语句出错
-
document.getElementById的简写方式(获取id对象的简略写法)
比如用_$(id)代替document.getElementById(id). 如果是纯粹的代替可以使用下面的代码 复制代码 代码如下: function $(id){document.getElementById(id)} 个人比较推荐用prototype中对document.getElementById的定义: 复制代码 代码如下: function $() { var elements = new Array(); for (var i = 0; i < arguments.length;
随机推荐
- VBS教程:函数-Sin 函数
- iOS利用MJRefresh实现自定义刷新动画效果
- 使用pcs api往免费的百度网盘上传下载文件的方法
- thinkPHP连接sqlite3数据库的实现方法(附Thinkphp代码生成器下载)
- JS 文字符串转换unicode编码函数
- python写的一个文本编辑器
- Android编程实现使用Intent传输包含自定义类的ArrayList示例
- Android基于Http协议实现文件上传功能的方法
- CentOS7下MySQL5.7安装配置方法图文教程(YUM)
- vue实现表格增删改查效果的实例代码
- nodejs简单实现中英文翻译
- javascript实现计时器的简单方法
- 使用CDN和AJAX加速WordPress中jQuery的加载
- jQuery实现Div拖动+键盘控制综合效果的方法
- java中 spring 定时任务 实现代码
- jQuery实现左右切换焦点图
- JQurey Validation表单验证使用详解
- vbs 搜索代理地址实现代码[小偷程序]
- java 实现输出随机图片实例代码
- 高效测试用例组织算法pairwise之Python实现方法