Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript IE 9错误getElementbyId:需要对象_Javascript_Vbscript - Fatal编程技术网

Javascript IE 9错误getElementbyId:需要对象

Javascript IE 9错误getElementbyId:需要对象,javascript,vbscript,Javascript,Vbscript,出于某种原因,下面的VBS在IE8中很有魅力,但在我的两台笔记本电脑上都有 我在.getElement获取所需对象 请问我该怎么修 WScript.Quit Main Function Main Set IE = WScript.CreateObject("InternetExplorer.Application", "IE_") IE.Visible = True IE.Navigate "http://desistream.tv/en/index.shtml" Wait I

出于某种原因,下面的VBS在IE8中很有魅力,但在我的两台笔记本电脑上都有 我在
.getElement
获取所需对象

请问我该怎么修

WScript.Quit Main

Function Main
  Set IE = WScript.CreateObject("InternetExplorer.Application", "IE_")
  IE.Visible = True
  IE.Navigate "http://desistream.tv/en/index.shtml"
  Wait IE
  With IE.Document
    .getElementByID("login_username").value = "myuser"
    .getElementByID("login_password").value = "mypass"
    .getElementByID("frmLogin").submit
  End With
End Function

Sub Wait(IE)
  Do
    WScript.Sleep 500
  Loop While IE.ReadyState < 4 And IE.Busy 
  Do
    WScript.Sleep 500
  Loop While IE.ReadyState < 4 And IE.Busy 
End Sub

Sub IE_OnQuit
  On Error Resume Next
  WScript.StdErr.WriteLine "IE closed before script finished."
  WScript.Quit
End Sub

你需要使用正确的名字。您提供的名称是Name属性,而不是ID,因此:

.getElementByID("login_username").value = "myuser"
.getElementByID("login_password").value = "mypass"
应该是:

.getElementByID("username").Value = "myuser"
.getElementByID("pass").Value = "mypass"

你需要使用正确的名字。您提供的名称是Name属性,而不是ID,因此:

.getElementByID("login_username").value = "myuser"
.getElementByID("login_password").value = "mypass"
应该是:

.getElementByID("username").Value = "myuser"
.getElementByID("pass").Value = "mypass"

永远都没见过VBS。为什么不用JavaScript重新编写,我肯定会更兼容。我不知道如何:(.我试过了。你到底想用这段代码做什么?我已经好几年没有使用VBS了,所以我可能不是回答这个问题的最佳人选。我建议你看一看,然后用JavaScript做这个实验。这是值得投资的。VBS在前端开发中已经很少使用了,可能只在一些内部网的东西和MS上使用应用程序。哦,我明白了……好吧,他获取元素并提交表单的实际登录部分可以用JS完成。我想他可以使用NodeJS或简单的bash/cmd脚本来启动网站。至于问题,我在某个地方读到IE9无法解释VBS,如果不是在兼容模式下。@Mowgli:尝试切换到compatib在JavaScript模式下运行,看看它是否有效。在like forever中从未见过VBS。为什么不在JavaScript中重新运行它,我肯定会更兼容。我不知道如何:(.我试过了。你到底想用这段代码做什么?我已经好几年没有使用VBS了,所以我可能不是回答这个问题的最佳人选。我建议你看一看,然后用JavaScript做这个实验。这是值得投资的。VBS在前端开发中已经很少使用了,可能只在一些内部网的东西和MS上使用应用程序。哦,我明白了……好吧,他获取元素并提交表单的实际登录部分可以用JS完成。我想他可以使用NodeJS或简单的bash/cmd脚本来启动网站。至于问题,我在某个地方读到IE9无法解释VBS,如果不是在兼容模式下。@Mowgli:尝试切换到compatib不,这不是问题,我已经试过了,我已经在IE8上试过了。让我试一下兼容模式和你的代码,但问题似乎是从兼容模式开始。我刚刚试过这两个条件,如果兼容模式打开,它们都能工作。谢谢,这不是问题lem,我已经试过了,我已经在IE8上使用过了。让我试一下兼容模式和你的代码,但问题似乎是从兼容模式开始。我刚刚试过这两个条件,如果兼容模式打开,它们都可以工作。谢谢