首页 > 解决方案 > 如何使用 java 脚本从函数内部获取值?

问题描述

这是脚本内部的函数

function dosubmit()
  {
    if (getObj("Frm_Username").value == "")
    {
      getObj("errmsg").innerHTML = "Username cannot be empty.";
      getObj("myLayer").style.visibility = "visible" ;
      return;
    }
    else
    {
      getObj("LoginId").disabled = true;
      getObj("Frm_Logintoken").value = "3";
      document.fLogin.submit();
    }
  }

我想获得价值,getObj("Frm_Logintoken") 因为我无法从中提取价值 #Frm_Logintoken

使用document.getElementById("#Frm_Logintoken") 这个给我null

因为 Frm_Logintoken 仅在我单击 submit 时才获得它的价值。

<input type="hidden" name="Frm_Logintoken" id="Frm_Logintoken" value="">

页代码

我在网上找到了这个/getObj\("Frm_Logintoken"\).value = "(.*)";/g 但是当我运行它时......它又给了我同样的线路!这是完整的代码 https://hastebin.com/gurosatuna.xml

标签: javascripthtmltokenhidden-fieldlogin-script

解决方案


第一的:

您使用 JS 检查值是否为空。但是,这不是必需的,因为 HTML 会为您执行此操作。添加一个必填属性,只要该值为空,表单就不会提交

文档:https ://www.w3schools.com/tags/att_input_required.asp

第二:

您可以在“提交时”使用事件处理程序。代码还不够完整,无法知道您是否这样做,但我想您只是在按钮上添加了一个 Click 处理程序。

文档:https ://www.w3schools.com/jsref/event_onsubmit.asp

结合这两者时,您始终填写用户名,并且代码仅在提交时执行。我希望这会有所帮助,如果没有,请发表评论,我将编辑此答案。

编辑:这个 SO 的答案也会有所帮助(不是选中的,而是下面的那个)

如何在 javascript 中收听表单提交事件?


推荐阅读