使用Javascript和表单将表单信息用作变量
好的,Stack Overflow的同学们,我有一个问题要问你们:我在高中的一个网页设计课上,在课前学习,因为我已经知道了课程的前半部分。老师问我是否可以教我所学的Javascript,我同意了。然而,她想让我教的一件事是,当我自己尝试时,它对我不起作用。我试图对一个变量做一个简单的检查,当你在一个框中输入一个名字时,如果是我的名字或老师的名字,它会弹出一个弹出窗口,上面写着“欢迎”或类似的东西,如果是其他人,它会写着“走开”,唯一的问题是,无论我尝试什么,代码中的某些东西都不起作用。这是我目前拥有的一个测试函数;它旨在打印出使用Javascript和表单将表单信息用作变量,javascript,forms,alert,var,Javascript,Forms,Alert,Var,好的,Stack Overflow的同学们,我有一个问题要问你们:我在高中的一个网页设计课上,在课前学习,因为我已经知道了课程的前半部分。老师问我是否可以教我所学的Javascript,我同意了。然而,她想让我教的一件事是,当我自己尝试时,它对我不起作用。我试图对一个变量做一个简单的检查,当你在一个框中输入一个名字时,如果是我的名字或老师的名字,它会弹出一个弹出窗口,上面写着“欢迎”或类似的东西,如果是其他人,它会写着“走开”,唯一的问题是,无论我尝试什么,代码中的某些东西都不起作用。这是我目前
<!doctype html>
<html>
<head>
<script type="text/javascript">
var name = document.KageForm.User.value;
function validator(){
alert(name);
}
</script>
</head>
<body>
<form name="KageForm">
Username:<input type="text" name="User">
<br/>
Password: <input type="password" name="pass">
<br/>
<input type="button"value="Submit" onclick="validator()" />
</form>
<script type="text/javascript">
</script>
</body>
</html>
var name=document.KageForm.User.value;
函数验证器(){
警报(名称);
}
用户名:
密码:
以下是我正在尝试使用的代码的完整版本:
<!doctype html>
<html>
<head>
<script type="text/javascript">
var name = document.KageForm.User.value;
function validator(){
if(name=="Kage Kaldaka"){
alert("Eeyup")};
else
alert("Nnope");
}
</script>
</head>
<body>
<form name="KageForm">
Username:<input type="text" name="User">
<br/>
Password: <input type="password" name="pass">
<br/>
<input type="button"value="Submit" onclick="validator()" />
</form>
</body>
</html>
var name=document.KageForm.User.value;
函数验证器(){
如果(名称=“Kage Kaldaka”){
警报(“Eeyup”)};
其他的
警报(“Nnope”);
}
用户名:
密码:
if后面不应该有分号。您还必须将变量放入函数中以使其更新:
function validator(){
var name = document.KageForm.User.value;
if(name=="Kage Kaldaka"){
alert("Eeyup")
} else {
alert("Nnope");
}
}
jsiddle:这里有几个问题:
- 在
语句后面有一个分号if
- 您正在页面加载时读取名称值,此时输入字段甚至还没有添加到页面中,用户肯定还没有填写。当用户提交表单时,您需要阅读它,即您需要将
分配移动到名称
方法中:验证程序
您正在函数外设置变量:
<script type="text/javascript">
var name = document.KageForm.User.value;
function validator(){
if(name=="Kage Kaldaka"){
alert("Eeyup")};
else
alert("Nnope");
}
</script>
var name=document.KageForm.User.value;
函数验证器(){
如果(名称=“Kage Kaldaka”){
警报(“Eeyup”)};
其他的
警报(“Nnope”);
}
这意味着var name
在页面加载时设置,但在其他时间不设置。将其移动到validator()
您还以分号结束了
if
,这将导致else
部分出错。除了前面的所有答案之外,在JavaScript中使用===not===您所说的“良好方式”是什么意思。这与礼貌无关,这两个操作符的意思不同。你是对的,但重要的是要知道它们之间的区别。在本例中==和===具有相同的效果,但是当您不需要使用==时,我认为应该使用===。这就像“严格使用”争论,双方都有很多争论。这是我的想法,我读了很多文章,我认为这是一个好习惯。非常感谢!这是我第一次做这样的事情,所以我不知道变量的这一部分。如果你不介意的话,我还有一个问题,我认为相对简单:出于某种原因,每当我调用使用document.write的函数时,它都会从按钮或输入中删除页面上的所有样式。你知道这是什么原因吗?
<script type="text/javascript">
var name = document.KageForm.User.value;
function validator(){
if(name=="Kage Kaldaka"){
alert("Eeyup")};
else
alert("Nnope");
}
</script>