-1

这是我的登录页面代码:http: //pastebin.com/RGVrW0Hi

body它是标签下方的字段。

一路下来,我的功能有一个 scipt 标签。我正在尝试检查用户是否在“Navn”字段中输入了一些内容,如果没有,它应该返回false.

我已经在一个看起来像这样的较小页面中尝试过它:http: //pastebin.com/d1vzyDvd

谁能指出我正确的方向?

4

3 回答 3

0

使用document.getElementsByName("navn").value[0]而不是document.famular.navn.value通过名称获取输入字段的值。

function validerform125() {

  if (document.getElementsByName("navn")[0].value == "") {
    alert("NEEEJ!!!");
    return false;
  }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<form name="famular" action="vanillahost.html" method="post" onsubmit="return validerform125()">
  Navn
  <input name="navn" type="text">
  <br/>Email
  <input name="email" type="email">
  <br/>

  <div>
    <input type="submit" name="send" value="send">
  </div>
</form>

您添加[0]document.getElementsByName("navn")因为getElementsByName返回一个 NodeList 对象,该对象表示具有指定名称的元素集合(在您的情况下:)"Navn"。通过添加 [0],您基本上是在返回找到的第一个元素。

于 2015-04-30T14:58:08.487 回答
0

如果您想按名称获取任何字段,请使用

var value = document.getElementsByName("navn")[0].value;
// By Id
var value = document.getElementsById("navn").value;
于 2015-04-30T14:46:10.650 回答
0

如果您可以在 html 中包含 jquery 会更好,这将为您提供更好的界面来与 html 元素交互。

在 java-script 你可以试试下面的代码

<body>
<div>
    <form name="famular" action="vanillahost.html" method="post" onsubmit="return validerform125()">
        Navn <input name="navn" type="text"><br/>
        Email <input name="email" type="email"><br/>

        <div>
            <input type="submit" name="send" value="send">
        </div>
    </form>
</div>
</body>
<script>
   function validerform125() {
    var x = document.forms["famular"]["navn"].value;
    if (x == null || x == "") {
        alert("Name must be filled out");
        return false;
    }
   } 
</script>
于 2015-04-30T15:01:36.160 回答