Javascript VB脚本提交问题

Javascript VB脚本提交问题,javascript,vbscript,Javascript,Vbscript,和其他很多人一样,我也有一个自动登录脚本的问题。 我的问题类似于 然而,我的问题是,我应该调用什么函数。 我不是编码员,但我很热情 以下是我当前的代码: On Error Resume Next Const PAGE_LOADED = 4 Set objIE = CreateObject("InternetExplorer.Application") Call objIE.Navigate("https://autentisering.vll.se/login.html") objIE.Vi

和其他很多人一样,我也有一个自动登录脚本的问题。 我的问题类似于

然而,我的问题是,我应该调用什么函数。 我不是编码员,但我很热情

以下是我当前的代码:

On Error Resume Next

Const PAGE_LOADED = 4

Set objIE = CreateObject("InternetExplorer.Application")
Call objIE.Navigate("https://autentisering.vll.se/login.html")
objIE.Visible = True

Do Until objIE.ReadyState = PAGE_LOADED : Call WScript.Sleep(100) : Loop

objIE.Document.all.username.Value = "username"
objIE.Document.all.password.Value = "password"

If Err.Number <> 0 Then
  msgbox "Error: " & err.Description
End If

Call objIE.Document.forms(0).submit()

Set objIE = Nothing
出错时继续下一步
常量页面_已加载=4
Set objIE=CreateObject(“InternetExplorer.Application”)
调用objIE.Navigate(“https://autentisering.vll.se/login.html")
objIE.Visible=True
直到objIE.ReadyState=PAGE_加载为止:调用WScript.Sleep(100):循环
objIE.Document.all.username.Value=“username”
objIE.Document.all.password.Value=“password”
如果错误号为0,则
msgbox“错误:&错误说明
如果结束
调用objIE.Document.forms(0.submit())
设置对象=无
这是我试图“打破”的登录文字:

函数getHtmlForButton(nameStr、str、bClass、onClickFn){ 如果(nameStr==null | | nameStr==“”| | str==null | | str==“”| | onClickFn==null | | onClickFn==“”){ debugMsg(“按钮的一个输入参数不可用”); 返回; } 书面文件(“”); } 函数submitAction(){ if(document.forms[0].err_flag.value==1){ //当用户尝试登录失败时会发生这种情况 //他将再次登录。这意味着我们已经 //在他的第一次尝试中提取了重定向url及其存储 //在redirect_url输入元素中,只需提交表单 document.forms[0]。err_flag.value=0; document.forms[0]。buttonClicked.value=4; document.forms[0]。提交(); }否则{ var link=document.location.href; //警报(“链接为”+链接); var searchString=“?重定向=“; var equalIndex=link.indexOf(searchString); var-url=“”; 如果(均衡指数>0){ equalIndex+=searchString.length; 重定向URL=link.substring(equalIndex); var指数=0; //仅当url不包含时添加http index=redirectUrl.indexOf(“http”); 如果(索引!=0){ redirectUrl=“http://”+redirectUrl; } } 如果(重定向URL.length>255){ redirectUrl=redirectUrl.substring(0255); } document.forms[0]。redirect_url.value=redirectUrl; //警报(“重定向url为”+文档.forms[0]。重定向url.value); document.forms[0]。buttonClicked.value=4; document.forms[0]。提交(); } } 函数submitOnEnter(事件){ var NS4=(document.layers)?true:false; var代码=0; 如果(NS4) 代码=event.which; 其他的 代码=event.keyCode; 如果(代码==13)submitAction(); //12对应于输入事件 } 函数checkForMsg(){ if(document.forms[0].info_flag.value==1){ 警报(document.forms[0].info\u msg.value); } } 编辑: 我遇到的问题是它无法登录。它像应该的那样输入用户名和密码,但是我得到一个错误,上面写着“error:Objektet stöder inte egenskapen eller-metoden”(是瑞典语),翻译成“error:the object不支持此属性或方法”(谷歌翻译了一点)

最新编辑: 我把动作线改成了 调用objIE.Document.forms(0.submit()) 并删除了第一行(在错误恢复下一行时)。 现在我没有收到任何警告,但它根本不会登录。它在一瞬间加载并刷新,所以我不知道它是否输入了名称和密码,但由于我没有更改,它应该这样做


我做错了什么?

您忘了描述您遇到的实际问题。谢谢,因为压力而错过了。昨天在您的评论后添加了:)请提供完整的错误消息,包括错误号和(如果可用)引起错误的行。提供了,但它是瑞典语的,因此翻译可能有点错误。没有说明引起错误的行,但是如果我去掉“Application.SendKeys”{TAB}“Application.SendKeys”{ENTER}”,它绝对不会给出错误,那么我猜是那些行…您可能没有实例化对象。与VBA不同,VBScript没有默认的
应用程序
对象。您需要先创建它,例如:
Set Application=CreateObject(“WScript.Shell”)
function getHtmlForButton(nameStr, str, bClass,onClickFn) {
  if(nameStr == null || nameStr =="" || str == null || str =="" || onClickFn == null || onClickFn =="") {
    debugMsg("One of the input params for the button is not available");
    return;
  }
  document.writeln('<input type="button" name="',nameStr,'" value="',str,'" class="',bClass,'"  onClick="',onClickFn,'">');
}

function submitAction() {
  if(document.forms[0].err_flag.value == 1) {
    // This case occurs when user's attempt to login failed
    // and he is going to login again. This means we have already
    // extracted redirect url in his first attempt and its stored
    // in redirect_url input element. so just submit the form

    document.forms[0].err_flag.value = 0;
    document.forms[0].buttonClicked.value = 4;
    document.forms[0].submit();
  } else {
    var link = document.location.href;

    //alert("Link is "+link);

    var searchString = "?redirect=";
    var equalIndex = link.indexOf(searchString);
    var redirectUrl = "";

    if(equalIndex > 0) {
      equalIndex += searchString.length;
      redirectUrl=link.substring(equalIndex);
      var index=0;

      //add http only if url does not have
      index=redirectUrl.indexOf("http");

      if(index != 0) {
        redirectUrl = "http://"+ redirectUrl;
      }
    }

    if(redirectUrl.length > 255) {
      redirectUrl = redirectUrl.substring(0,255);
    }

    document.forms[0].redirect_url.value = redirectUrl;

    //alert("redirect url is "+document.forms[0].redirect_url.value);

    document.forms[0].buttonClicked.value = 4;
    document.forms[0].submit();
  }
}

function submitOnEnter(event) {
  var NS4 = (document.layers) ? true : false;
  var code = 0;

  if (NS4)
    code = event.which;
  else
    code = event.keyCode;

  if (code==13) submitAction();
  // 12 corresponds to enter event
}

function checkForMsg() {
  if(document.forms[0].info_flag.value == 1) {
    alert(document.forms[0].info_msg.value);
  }
}