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

HTML文档中没有定义JavaScript函数,为什么没有?,javascript,Javascript,我正在编写一个程序,让用户输入一个电话号码,并根据几个条件告诉用户是否接受/拒绝。 我已经设计出了进行计算的函数,但是我无法让JavaScript与HTML文档一起工作:找不到它 以下是两个代码:(JS然后是HTML): 功能测试nummer(nummer){ nummer=document.getElementById(“a”).value; 如果isNaN(努默){ log(“嗨!这个电话号码有问题,请再试一次。”); }否则如果(numer.length=14){ log(“谢谢!我们很快

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

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

功能测试nummer(nummer){
nummer=document.getElementById(“a”).value;
如果isNaN(努默){
log(“嗨!这个电话号码有问题,请再试一次。”);
}否则如果(numer.length=14){
log(“谢谢!我们很快就会联系的。”);
}否则{
log(“嗨!这个电话号码有问题,请再试一次。”);
}
HTML:


努默5号
ditt Telefonnumer här的Skriv:
知道它为什么不起作用吗?我得到这个错误:

未捕获的语法错误:意外的标识符

以及:

未捕获引用错误:未定义TestNummer

你知道为什么它不起作用吗


非常感谢!

代码中有两个语法错误。第一个语法错误如下:

if isNaN(nummer){
应该是:

if (isNaN(nummer)) {
} else if (nummer.length <= 8  && nummer.length >= 14) {
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) && (nummer.length >=14)) {  //HAVE A LOOK AT THIS CONDITION
        console.log("Thanks! We'll be in touch shortly.");
    } else {
        console.log("Hi! This phone number appears faulty, please try again.");
    }
}
第二个语法错误在这一行:

} else if (nummer.length <=8) && else if (nummer.length >=14) {
}else if(numer.length=14){
语法应为:

if (isNaN(nummer)) {
} else if (nummer.length <= 8  && nummer.length >= 14) {
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) && (nummer.length >=14)) {  //HAVE A LOOK AT THIS CONDITION
        console.log("Thanks! We'll be in touch shortly.");
    } else {
        console.log("Hi! This phone number appears faulty, please try again.");
    }
}
}else if(numer.length=14){
但是,你似乎把条件倒过来了,我想这就是你的意思:

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

}否则如果(nummer.length>=8&&nummer.length代码中有两个语法错误。第一个语法错误如下:

if isNaN(nummer){
应该是:

if (isNaN(nummer)) {
} else if (nummer.length <= 8  && nummer.length >= 14) {
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) && (nummer.length >=14)) {  //HAVE A LOOK AT THIS CONDITION
        console.log("Thanks! We'll be in touch shortly.");
    } else {
        console.log("Hi! This phone number appears faulty, please try again.");
    }
}
第二个语法错误在这一行:

} else if (nummer.length <=8) && else if (nummer.length >=14) {
}else if(numer.length=14){
语法应为:

if (isNaN(nummer)) {
} else if (nummer.length <= 8  && nummer.length >= 14) {
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) && (nummer.length >=14)) {  //HAVE A LOOK AT THIS CONDITION
        console.log("Thanks! We'll be in touch shortly.");
    } else {
        console.log("Hi! This phone number appears faulty, please try again.");
    }
}
}else if(numer.length=14){
但是,你似乎把条件倒过来了,我想这就是你的意思:

} else if (nummer.length >= 8  && nummer.length <= 14) {
}如果(numer.length>=8&&numer.length有两个错误:

} else if ((nummer.length <=8) && else if (nummer.length >=14)) {
应该是:

onclick="testanummer(this.form.nummer.value);"
或者从函数中删除参数(因为您仍然在函数中检索参数),甚至:

因此,您的最终.js文件应该是:

if (isNaN(nummer)) {
} else if (nummer.length <= 8  && nummer.length >= 14) {
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) && (nummer.length >=14)) {  //HAVE A LOOK AT THIS CONDITION
        console.log("Thanks! We'll be in touch shortly.");
    } else {
        console.log("Hi! This phone number appears faulty, please try again.");
    }
}
功能测试nummer(nummer){
nummer=document.getElementById(“a”).value;
如果(伊斯南(努默)){
log(“嗨!这个电话号码有问题,请再试一次。”);
}如果((numer.length=14)){//请查看此条件
log(“谢谢!我们很快就会联系的。”);
}否则{
log(“嗨!这个电话号码有问题,请再试一次。”);
}
}
两个错误:

} else if ((nummer.length <=8) && else if (nummer.length >=14)) {
应该是:

onclick="testanummer(this.form.nummer.value);"
或者从函数中删除参数(因为您仍然在函数中检索参数),甚至:

因此,您的最终.js文件应该是:

if (isNaN(nummer)) {
} else if (nummer.length <= 8  && nummer.length >= 14) {
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) && (nummer.length >=14)) {  //HAVE A LOOK AT THIS CONDITION
        console.log("Thanks! We'll be in touch shortly.");
    } else {
        console.log("Hi! This phone number appears faulty, please try again.");
    }
}
功能测试nummer(nummer){
nummer=document.getElementById(“a”).value;
如果(伊斯南(努默)){
log(“嗨!这个电话号码有问题,请再试一次。”);
}如果((numer.length=14)){//请查看此条件
log(“谢谢!我们很快就会联系的。”);
}否则{
log(“嗨!这个电话号码有问题,请再试一次。”);
}
}


onclick
事件中的“numer”变量未定义。请将其更改为
onclick=“testanummer(this.value)”
。或者从函数参数中删除
nummer
,只需调用
testanummer()
因为您仍然在函数中检索输入的数字。函数没有定义,因为您有语法错误。错误消息将告诉您在哪里(您必须将
if
语句的所有条件括在括号中,如:
if(isNaN(numer))
)。您的JS格式不正确,是testanumer.JS的确切内容吗?您缺少javascript文件中关闭函数的最后一个
}
,因此出现语法错误。这意味着无法解析该文件,因此出现ReferenceError.LOL人工代码解析器:)您的“nummer”
onclick
事件中的变量未定义。请将其更改为
onclick=“testanummer(this.value)”
。或者从函数参数中删除
nummer
,只需调用
testanummer()
因为您仍然在函数中检索输入的数字。函数没有定义,因为您有语法错误。错误消息将告诉您在哪里(您必须将
if
语句的所有条件括在括号中,如:
if(isNaN(numer))
)。您的JS格式不正确,是testanumer.JS的确切内容吗?您缺少javascript文件中关闭函数的最后一个
}
,因此出现语法错误。这意味着无法解析该文件,因此出现了ReferenceError.LOL人工代码解析器:)@FelixKling:是的,我刚刚注意到。:)@菲利克斯克林:是的,我刚刚注意到。:)你忘了一对括号。。。这段代码也不会编译。我已经按照你说的做了,我理解它背后的逻辑,但错误仍然存在。@Martijn Yeh我忽略了这一点。已更改。@user1916173不客气。请接受答案。:)祝你好运!你忘了一对括号。。。这段代码也不会编译。我已经按照你说的做了,我理解它背后的逻辑,但错误仍然存在。@Martijn Yeh我忽略了这一点。已更改。@user1916173不客气。请接受答案。:)祝你好运!