Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.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
为什么赢了';当从HTML调用时,我的JavaScript链接不能工作吗?_Javascript_Html_Hyperlink - Fatal编程技术网

为什么赢了';当从HTML调用时,我的JavaScript链接不能工作吗?

为什么赢了';当从HTML调用时,我的JavaScript链接不能工作吗?,javascript,html,hyperlink,Javascript,Html,Hyperlink,我对编码相当陌生,我正在努力完成Codecademy的Javascript课程。我已经学习了一点HTML/CSS,我几乎已经完成了JavaScript。我曾研究过有类似问题的人,但这些解决方案通常涉及JQuery,我还没有了解到这一点 这是我的HTML(index.HTML): 注意:index.html与main.js位于同一文件夹中 当我打开index.html时,什么也没有发生,甚至打开警报()。我遗漏了什么吗?脚本中有错误,因为如果不使用转义斜杠,就无法在多行中生成javascript语

我对编码相当陌生,我正在努力完成Codecademy的Javascript课程。我已经学习了一点HTML/CSS,我几乎已经完成了JavaScript。我曾研究过有类似问题的人,但这些解决方案通常涉及JQuery,我还没有了解到这一点

这是我的HTML(index.HTML):

注意:index.html与main.js位于同一文件夹中


当我打开index.html时,什么也没有发生,甚至打开警报()。我遗漏了什么吗?

脚本中有错误,因为如果不使用转义斜杠,就无法在多行中生成javascript语句

我得到了这个错误:

SyntaxError:未终止的字符串文字

var charName=prompt(“NASA接待员:’欢迎来到任务控制中心

以下是修改后的代码:

    alert();

    // Acquire character's name and check to make sure it's a string
    //The \r\n\ will format the string in prompt and make it appear in new line
    var charName = prompt("NASA Receptionist: 'Welcome to Mission Control. \
                        \r\n\May I have your last name, please?'");

    var nameCheck = function(charName) {
        while (typeof charName === "number") {
            charName = prompt("NASA Receptionist: 'Surely, your name is not \
                                \r\n\a number... Please, may I have your last name?'");
        }
    };

    nameCheck(charName);

检查浏览器源文件中是否加载了main.js


使用alert(“=loaded=”)检查alert是否被调用

如果您甚至没有收到语法错误,那么我认为您可能错误地引用了main.js。是否确实与index.html位于同一目录中。 而且,每次我运行它时,typeof方法都返回“string”,不管我是否输入数字


alert(typeof charName);
您在console中发现任何错误吗?我不确定这是什么意思。我正在使用Sublime Text 2创建文件。我知道如何查看我的文件工作的唯一方法是尝试在我的web浏览器中运行它…出现了“意外令牌”“Google Developer Tools中出现错误。我从while循环中删除了;,并修复了它!!关闭…,但可能不是OP所要的。由于字符串第二行的前导空格,警报中的文本格式不正确()我建议使用换行符代替
\r\n
()@JonP我可以使用\n\实现同样的效果,可以吗?`r\n\是最安全的选项。不同的操作系统使用不同的行尾字符!()@JonP我已编辑了我的答案,以适应您建议的更改,以修复提示文本中的错误格式。好的,我可以尝试进行更改,看看是否有帮助。更新:这没有更改任何内容。我注释掉了除开始行警报()之外的所有内容;什么也没发生。谢谢你公开了这一点。我以后还得想点别的。现在,我需要修复我的html没有访问我的js。我的main.js文件和我的index.html在同一个文件夹中。。。
alert();

// Acquire character's name and check to make sure it's a string
var charName = prompt("NASA Receptionist: 'Welcome to Mission Control. 
May I have your last name, please?'");

var nameCheck = function(charName) {
    while (typeof charName === "number") {
        charName = prompt("NASA Receptionist: 'Surely, your name is not 
a number... Please, may I have your last name?'");
    }
};

nameCheck(charName);
    alert();

    // Acquire character's name and check to make sure it's a string
    //The \r\n\ will format the string in prompt and make it appear in new line
    var charName = prompt("NASA Receptionist: 'Welcome to Mission Control. \
                        \r\n\May I have your last name, please?'");

    var nameCheck = function(charName) {
        while (typeof charName === "number") {
            charName = prompt("NASA Receptionist: 'Surely, your name is not \
                                \r\n\a number... Please, may I have your last name?'");
        }
    };

    nameCheck(charName);