在使用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>标签之后然后尝试
分享到:
相关推荐
在上述问题中,主要讨论了如何正确地使用 `document.getElementById` 方法来获取页面中的元素对象,特别是在页面加载过程中的时机问题。 首先,`document.getElementById` 是JavaScript中的一个函数,它用于根据...
IE8中JavaScript报错document.getElementById(...)为空或不是对象的解决方法知识点: 1. 针对IE8浏览器的兼容性问题,主要是由于IE8对文档类型的声明(DTD)变得更为严格。这导致在不正确的文档类型声明下,...
ie8中对于声明文档类型更加严格如下面的代码。 运行环境: 清空 Windows平台 S60v2 S60v3 CHM PDF PPT WORD ... [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]可以看到这段代码在ie7与ie8中都是可以运行的,下面的...
在JavaScript编程中,"options为空或不是对象"的错误通常发生在尝试访问或操作HTML `<select>` 元素的`options`属性时,该属性表示下拉列表中的所有选项。如果出现这种错误,可能是由于以下几种情况导致的: 1. **...
2. ‘null’为空或不是对象: [removed] 里面加个defer=true属性试试看, 即:[removed] 3. document.getElementById为null 原因: var titab=document.getElementById(“titletab”);没有取到对象 解决办法: 1.在错误...
解决方法是改为使用`document.formName.elements["elementName"]`。 2. 集合类对象问题:FF要求使用`[]`作为下标运算符,例如`document.getElementsByName("inputName")[1]`,而IE则可以接受`()`。因此,建议统一...
8. **frame问题**:在IE中,你可以直接用`window.testFrame`获取frame,但在FF中,应使用`window.top.document.getElementById("testFrame").src`或`window.top.frameName.location`来改变frame的源。 9. **取得...
* 通过ID查找对象:`document.getElementById(id)` 定时器 * 设置定时器:`timer=setInterval('scrollwindow()',delay)` * 清除定时器:`clearInterval(timer)` 编码 * 编码:`escape()` * 解码:`unescape` 父...
document.getElementsByName()和document.getElementById()是常用的DOM元素查找方法。定时器可以通过setInterval()和clearInterval()来设置和清除。 JavaScript提供了编码和解码的方法,如escape()和unescape()。...
- **现有问题**:MF 中 `nodeName` 的值对于 `textNode` 类型的节点为空,而在 IE 中则不是。 - **解决方法**:使用 `tagName` 代替 `nodeName` 来获取 HTML 元素的标签名称。 #### 十五、`input` 类型更改 - **...
1. **`document.getElementById()`**: 用于根据指定的 `id` 获取单个元素。 - **示例**: ```javascript var element = document.getElementById("myElement"); ``` 2. **`document.getElementsByName()`**: ...
最后,书中的实际编程示例和技巧,如防止点击空链接导致页面跳转到顶部的处理方法,以及如何获取上一网页源代码,都为JavaScript开发者提供了实际应用中的解决思路和方法。 综上所述,《JavaScript代码大全》是一本...
4. **解构赋值**:提供了一种从数组或对象中提取值的新方法。 - 示例: ```javascript const [a, b] = [1, 2]; const { firstName, lastName } = { firstName: "John", lastName: "Doe" }; ``` 5. **默认参数*...
6. `toUpperCase()` 方法用于将字符串转换为大写,如 `document.getElementById("input").value.toUpperCase();`。 7. JavaScript的数据类型包括:String、Number、Boolean、Null、Object、Function。其中,String...
8. **frame问题**:在Firefox中,获取frame需使用`window.top.document.getElementById("testFrame").src`或`window.top.frameName.location`。 9. **取得元素属性**:在Firefox中,自定义属性需使用`getAttribute...