我正在使用HTML和Javascript进行一个小练习.基本上,我有2个输入字段,我需要使用Javascript中的1个函数进行验证.第一个输入要求输入名称,如果名称少于3个字符,则会打印错误,否则将删除错误.第二个要求当地.现在,为了验证这一点,我必须首先创建一个包含大约3个位置的数组,然后比较用户输入的位置以查看它是否在数组中.如果不是,则再次打印错误.事情是这样的; 我在实时预览中收到错误.错误在屏幕上打印"无法GET/Msida,Pieta,Marsa"和"无法加载资源:服务器在控制台上响应状态为404(未找到)".问题是什么?
HTML:
<!DOCTYPE html>
<html>
<head>
<title>Revision</title>
</head>
<body>
<nav id="menu"></nav>
<a>Full Name: </a><input type="text" name="fName" id="fName" ><br/>
<div id="divName"></div><br/>
<a>Locality: </a><input type="text" name="locality" id="locality" ><br/>
<div id="divLocality"></div><br/>
<script src="js/mainScript.js"></script>
<script src="js/detailsScript.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
JavaScript的:
var fName = document.getElementById("fName");
var locality = document.getElementById("locality");
var divName = document.getElementById("divName");
var divLocality = document.getElementById("divLocality");
var location = ["Msida", "Pieta", "Marsa"];
function validation()
{
if(this.name == "fName")
{
if(this.value.length < 3)
{
divName.innerHTML = "Name should have atleast 3 characters";
divName.style.color = "red";
}
else if(this.value.length >= 3)
{
divName.innerHTML = "";
}
}
else if(this.name == "locality")
{
if(location.indexOf(this.value) > -1)
{
divLocality.innerHTML = "Location Exists";
divLocality.style.color = "red";
}
else
{
divLocality.innerHTML = "Location doesn't Exist";
divLocality.style.color = "red";
}
}
}
fName.addEventListener('focusout', validation);
locality.addEventListener('focusout', validation);
Run Code Online (Sandbox Code Playgroud)
谢谢!
只需重命名您的location变量即可。您当前的代码不起作用,因为您基本上是在重新分配 URL。请参阅window.location。
var location = ['a', 'b', 'c'];JavaScript 实际上会分两部分执行 :声明和赋值。声明部分 ( var location) 将被忽略,因为location总是在最初声明(至少在浏览器中)。重新分配部分 ( location = ....) 会将您重定向到location.toString。
| 归档时间: |
|
| 查看次数: |
62 次 |
| 最近记录: |