Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.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
Javascript 当我在HTML中将onkeyup用于JS函数时,为什么控制台会说我的函数没有定义?_Javascript_Html - Fatal编程技术网

Javascript 当我在HTML中将onkeyup用于JS函数时,为什么控制台会说我的函数没有定义?

Javascript 当我在HTML中将onkeyup用于JS函数时,为什么控制台会说我的函数没有定义?,javascript,html,Javascript,Html,我正在尝试做一个登记表,其中有一个文本框确认您的密码 标签{ 显示:内联块; 宽度:100px; 边缘底部:10px; } 身体{ 字体系列:无衬线; } 登记 登记 用户名: 电子邮件地址: 密码: 确认密码: var pass=document.getElementsByName(“密码”); var confPass=document.getElementsByName(“passwordconf”); 函数passVal(){ if(pass.value!=confPass.va

我正在尝试做一个登记表,其中有一个文本框确认您的密码


标签{
显示:内联块;
宽度:100px;
边缘底部:10px;
}
身体{
字体系列:无衬线;
}
登记
登记
用户名:


电子邮件地址:


密码:


确认密码:


var pass=document.getElementsByName(“密码”); var confPass=document.getElementsByName(“passwordconf”); 函数passVal(){ if(pass.value!=confPass.value){ confPass.setCustomValidity(“密码不匹配”); }否则{ confPass.setCustomValidity(“”); } }
getElementsByName返回元素数组, 您应该改用id或获取数组的第一个元素(pass[0])

getElementsByName返回一个元素数组, 您应该使用id,或者获取数组的第一个元素(pass[0])


标签{
显示:内联块;
宽度:100px;
边缘底部:10px;
}
身体{
字体系列:无衬线;
}
登记
登记
用户名:


电子邮件地址:


密码:


确认密码:


var pass=document.getElementsByName(“密码”)[0]; var confPass=document.getElementsByName(“passwordconf”)[0]; 函数passVal(){ if(pass.value!=confPass.value){ console.log('notequal'); }否则{ console.log('Equal'); } }

标签{
显示:内联块;
宽度:100px;
边缘底部:10px;
}
身体{
字体系列:无衬线;
}
登记
登记
用户名:


电子邮件地址:


密码:


确认密码:


var pass=document.getElementsByName(“密码”)[0]; var confPass=document.getElementsByName(“passwordconf”)[0]; 函数passVal(){ if(pass.value!=confPass.value){ console.log('notequal'); }否则{ console.log('Equal'); } }
这里需要解决的第一件事是如何通过使用

var pass = document.getElementsByName("passwordconf")
它返回名为
passwordconf
的所有元素的数组

.value
添加到变量
pass
将返回undefined,因为您没有定义数组中要获取的元素。您可以添加
[0]
以获取数组中的第一个元素(数组索引总是从
0
开始计数),如下所示:

pass[0].value;

请注意,这样做,您将不会得到未定义的
passVal
错误。

这里需要解决的第一件事是如何通过使用

var pass = document.getElementsByName("passwordconf")
它返回名为
passwordconf
的所有元素的数组

.value
添加到变量
pass
将返回undefined,因为您没有定义数组中要获取的元素。您可以添加
[0]
以获取数组中的第一个元素(数组索引总是从
0
开始计数),如下所示:

pass[0].value;

请注意,这样做,您将不会得到未定义的
passVal
错误。

应该调用该函数,但我确实看到了一个问题,即您有
document.getElementsByName
,并将pass和confPass中的内容视为元素而不是HTML集合。欢迎使用。请在“请发布您的错误”网站浏览。它是否说
setCustomValidity
未定义?或者passVal是未定义的?应该调用该函数,但我确实看到了一个问题,即您有
document.getElementsByName
,并将pass和confPass中的内容视为元素而不是HTML集合。欢迎使用。请在“请发布您的错误”网站浏览。它是否说
setCustomValidity
未定义?还是passVal未定义?谢谢你的建议。我尝试将两个变量的getElementsByName更改为getElementById,并向变量添加了ID。然而,同样的错误仍然出现在控制台中。谢谢您的建议。我尝试将两个变量的getElementsByName更改为getElementById,并向变量添加了ID。然而,同样的错误仍然出现在控制台中。谢谢您的帮助。我尝试进行您选择的更改,包括切换到ID,但我在console中收到相同的错误消息。今天早上,我尝试将带有更改的新代码放在不同的模拟器中,结果成功了。再次感谢。一定是repl.It.有问题,谢谢你的帮助。我尝试进行您选择的更改,包括切换到ID,但我在console中收到相同的错误消息。今天早上,我尝试将带有更改的新代码放在不同的模拟器中,结果成功了。再次感谢。一定是repl.It有问题。