Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.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
.length在javascript中显示值1_Javascript - Fatal编程技术网

.length在javascript中显示值1

.length在javascript中显示值1,javascript,Javascript,我有以下表格 <form name="client-login" method="post" onsubmit="return Check_form();"> <label>Email</label><input type="text" name="client-email" value=""><br/> <label>Password</label><input type="password" n

我有以下表格

<form name="client-login" method="post" onsubmit="return Check_form();">
  <label>Email</label><input type="text" name="client-email" value=""><br/>
  <label>Password</label><input type="password" name="password"  value="">
  <input type="submit" name="submit" value="submit"">
</form>
但是,尽管我提交的是空字段,但对于客户端电子邮件,它的警报值为1。
知道哪里出了问题吗。

document.getElementsByName()
返回一个数组


因此,在您的示例中,使用
document.getElementById()

在上面的JS中,您使用了包含名为“client email”的电子邮件文本字段数组的电子邮件变量

要查看电子邮件lentgh,请使用以下命令:

alert(email[0].value.length);

document.getElementsByName()
返回节点列表

使用
document.getElementById()


您可以使用
document.getElementsByName(“客户端电子邮件”)[0]
返回节点列表中的第一个元素,它实际上是一个数组。数组的第一个索引包含电子邮件文本字段对象。@jsve你说得对,这就是我使用0索引的原因。我已经编辑过了,我认为这很好。那么这是一个最佳解决方案吗?@amit是的。因为只有一个文本字段使用此名称。您还可以使用文本字段的id,您需要在文本字段中添加id。@Brokenhartღ—表单控件上不需要ID。要获取对输入的引用,可以使用
document.forms['client-login']['client-email']
。如果控件名称更改为有效标识符,则可以使用document.clientLogin.clientmail。返回一个NODLIST,它的长度是整数,因此从来没有空,所以考虑使用<代码>(EMAL.Lime= 0)<代码>或<代码>如果(电子邮件!长度)< /代码>。
alert(email[0].value.length);