2016-07-05 12 views
3

私はコーディングに新しく、私はCodecademyのJavascriptコースを完了しようとしています。私はHTML/CSSについて少し学びました。私はJavaScriptでほぼ完成しました。私は同様の問題を抱えている人々を研究してきましたが、それらのソリューションには通常、JQueryが関わっています。ここでHTMLから呼び出されたときにJavaScriptのリンクが機能しないのはなぜですか?

は私のHTML(index.htmlの)である:ここでは

<!DOCTYPE html> 
<html> 
    <head> 
    <script type="text/javascript" src="main.js"></script> 
    </head> 
    <body> 
    </body> 
</html> 

は私のJavaScriptの始まりです:

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); 

注:index.htmlには、main.jsと同じフォルダにあります

私がindex.htmlを開くと、何も起こりません。開かれた警告()も表示されません。何か不足していますか?

+1

コンソールにエラーを見つけるのですか? – Rayon

+0

私はそれが何を意味するか正確には分かりません。私は崇高なテキスト2を使用してファイルを作成しています。私のファイル作業を見る方法を知っている唯一の方法は、Webブラウザでそのファイルを実行しようとすることです。 – Goeff

+0

Google Developer Toolsに「予期しないトークン」エラーがありました。私はそれを取った;私のwhileループのうち、それはそれを修正しました! – Goeff

答えて

6

エスケープスラッシュを使用せずに複数の行にjavascript文を作成できないため、スクリプトにエラーがあります。

私はこのエラーを得た:main.jsがロードされているかどうか、ブラウザのソース・ファイル内の

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); 
+2

閉じる...しかし、おそらくかなりのOPは後です。警告のテキストは、文字列(https://jsfiddle.net/3mawcL9y/)の2行目の先頭の空白のためにひどくフォーマットされています。改行文字を '\ r \ n'(https:// jsfiddle.net/3mawcL9y/1/) –

+0

@JonP私は\ n \を使って同じことを達成できましたか? – shivgre

+1

'r \ n \は最も安全なオプションです。異なったOSは異なる行末の文字を使います! (http://stackoverflow.com/questions/15433188/r-n-r-n-what-is-the-difference-between-them) –

2

チェック:

ここ

SyntaxError: unterminated string literal

var charName = prompt("NASA Receptionist: 'Welcome to Mission Control.

が変更されたコードです。あなたも、構文エラーを取得していない場合は、警告をチェックする

使用アラートが(「= =ロード」)その後、私はあなたが多分間違っmain.jsを参照すると思う、

+0

アラート();空の警告を表示します – shivgre

+0

そして私はupvote .. _WHY_を参照してください? – Rayon

2

と呼ばれるかされていません。これをindex.htmlと同じディレクトリに置いてもよろしいですか? また、私がそれを実行するたびに、typeofメソッドは数字を入力しても入力しなくても "string"を返します。

alert(typeof charName);

+0

これを公開していただきありがとうございます。私は後で別のものを見つけなければならないでしょう。今のところ、自分のjsにアクセスしていないHTMLを修正する必要があります。私のmain.jsファイルは、私のindex.htmlと同じフォルダにあります... – Goeff

関連する問題