html - document.getElementByID - 检查是否找到元素

标签 html dom scripting vbscript

这是一个示例代码,它打开一个 Internet Explorer 窗口,导航到 google,并通过其唯一 ID 获取页面上的一些元素:

set ie = CreateObject("InternetExplorer.Application")

ie.navigate("www.google.com")
ie.visible = true

while ie.readystate <> 4
    wscript.sleep 100
WEnd

set some_object = ie.document.getelementbyid("xjsc")

MsgBox some_object.tagname, 0

这个示例给我带来了一个 DIV 弹出窗口,这让我完全满意。

但在下一步我想检查页面中是否存在某些 ID。不幸的是,我不能只是这样,

set some_object = ie.document.getelementbyid("some_non_existant_id")
if some_object.tagname = "" then
...

因为它给了我以下错误:

ie.vbs(12, 1) Microsoft VBScript runtime error: Object required: 'some_object'

那么,检查是否找到元素的最佳做法是什么?

最佳答案

if isObject(some_object) then 

如果变量持有一个对象那么它被发现......

[更新] 经过一些测试和评论后,您需要使用 isNothing 方法..

因为你正在设置一个对象,所以它总是一个对象变量类型,但如果找不到它,它就会被设置为空..

if isNothing(some_object) then

我已经用你的示例代码检查了上面的内容,它按预期工作了..

用 vbscript 术语来说就是

if some_object is nothing then

关于html - document.getElementByID - 检查是否找到元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2539838/

相关文章:

ruby-on-rails - 如何在 Rails 之外的 ruby​​ 脚本中使用 ActiveRecord?

html - Css 轮播问题

Javascript 无法在 IE 11 的 onblur 函数中访问键盘事件,但在 IE 9 中则不能

c++ - 如何在 C++ 中实现通用 DOM 数据结构?

javascript - Vue.js - this.$refs.key 返回一个空数组或未定义而不是元素

javascript - jQuery样本

perl - 无法将文件提取或解压到自定义目标目录

javascript - 不使用id提交

javascript - addEventListener byt 标签

html - 两个 div 动态填充视口(viewport)高度