在使用document.getElementById时,遇到个奇怪的问题,提示“document.getElementById为空或不是对象”。经分析,document.getElementById不在function中,且其放置在页面body标签前,而html中的元素element是按页面顺序载入/执行的;当执行到document.getElementById("xxx")时,body中的这个id为xxx的元素尚未载入,故出现这种问题。
附网络转载:
http://www.cnblogs.com/lancelang/archive/2007/11/02/946679.html
引用
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.在错误语句的下面加上alert(titab);调试语句,看看是否有消息框弹出
2.如果没有弹出,检查HTML代码中的是否存在"id=titletab"的<table>标签(要仔细哦,一个字母都不能错的)
3.如果标签存在,那么考虑<script>代码段的位置问题,切记包含有类似getElement代码<script>代码段必须出现在HTML的Element之后也就是说你把<script>代码段放到<html>标签之后然后尝试
分享到:
相关推荐
1.下面是一个简单的例子,页面加载时显示一段信息 代码如下:<%@ page language=”java” import=”java.util.*” pageEncoding=”UTF-8″%><!... <head> [removed] alert(...
ie8中对于声明文档类型更加严格如下面的代码。 运行环境: 清空 Windows平台 S60v2 S60v3 CHM PDF PPT WORD ... [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]可以看到这段代码在ie7与ie8中都是可以运行的,下面的...
老提示脚本错误:“options为空或不是对象”,但用document.form1.xx或document.getElementById是能取到对象的。
今天更升级了ie8,发现原来在ie7下可以运行的代码,不能运行了,发现了一些细节,附临时修改办法。
2. ‘null’为空或不是对象: [removed] 里面加个defer=true属性试试看, 即:[removed] 3. document.getElementById为null 原因: var titab=document.getElementById(“titletab”);没有取到对象 解决办法: 1.在错误...
还要注意的是id属性也会被克隆,也就是克隆后会有两个相同id的元素(如果克隆对象有设置的话),这很容易会导致其他问题,程序会把克隆table的id属性设空。 ps:table请用class来绑定样式,用id的话新table就获取不...
|--null:一个特殊的值,表示“无值”--空对象。数据类型为Object |--undefined:表示声明了变量但从未赋值或者对象属性不存在 10.双等号(==)和全等号(===): |--“==”为确定两个运算数是否相等,“==”...
负责响应该事件的句柄函数可以有2个返回值(true 或 false)当返回值为false时,整个上传将被取消;当返回值为true时上传过程继续进行。而如果返回值为false,则通常是由一个uploadError事件所导致的。 注:官方...