gpt4 book ai didi

JavaScript 函数没有在 HTML 文档中定义,为什么?

转载 作者:行者123 更新时间:2023-11-28 16:07:36 25 4
gpt4 key购买 nike

我正在编写一个程序,让用户输入电话号码,并根据一些条件告诉用​​户是否接受/拒绝。我已经制定了执行计算的函数,但我无法让 JavaScript 与 HTML 文档一起工作:找不到它。

这是两个代码:(JS 然后 HTML):

function testanummer(nummer){
nummer = document.getElementById("a").value;
if isNaN(nummer){
console.log("Hi! This phone number appears faulty, please try again.");
} else if (nummer.length <=8) && else if (nummer.length >=14) {
console.log("Thanks! We'll be in touch shortly.");
} else {
console.log("Hi! This phone number appears faulty, please try again.");
}

HTML:

<html>
<head>
<title> Uppgift nummer 5</title>

<script src="testanummer.js"></script>
</head>


<body>
<form>
<label for="a">Skriv in ditt telefonnummer här: </label>
<input type="text" name="nummer" id="a">
<input type = "button" value ="Testa telefonnummer" onclick="testanummer(nummer);">
</form>
</body>
</html>

知道为什么它不起作用吗?我收到此错误:

Uncaught SyntaxError: Unexpected identifier

和:

Uncaught ReferenceError: testanummer is not defined

有什么想法为什么不起作用吗?

非常感谢!

最佳答案

代码中有两个语法错误。第一个语法错误在这里:

if isNaN(nummer){

应该是:

if (isNaN(nummer)) {

第二个语法错误在这一行:

} else if (nummer.length <=8) && else if (nummer.length >=14) {

语法应该是:

} else if (nummer.length <= 8  && nummer.length >= 14) {

但是,你似乎把条件搞反了,我想这就是你的意思:

} else if (nummer.length >= 8  && nummer.length <= 14) {

调用函数时,您应该从文本框中获取值,而不仅仅是对其的引用。另外,并非所有浏览器都将输入字段放在全局范围内,请使用表单访问该字段:

<input type = "button" value ="Testa telefonnummer" onclick="testanummer(this.form.nummer.value);">

然后就可以跳过函数中nummer变量的赋值了。

关于JavaScript 函数没有在 HTML 文档中定义,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14261634/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com