何らかの理由で、アラートボックス(テストとして追加)を正しく表示できません。関数がまったく実行されていないようです。私が間違っていることについてどう思いますか?
私のコードは、結果とともにここにあります。よろしくお願いします!
何らかの理由で、アラートボックス(テストとして追加)を正しく表示できません。関数がまったく実行されていないようです。私が間違っていることについてどう思いますか?
私のコードは、結果とともにここにあります。よろしくお願いします!
明らかな問題は、文字列定数の引用符による構文の誤りです。例えば、
h[0] = "<span style="color:red;">Please type a name!</span>";
する必要があります
h[0] = "<span style=\"color:red;\">Please type a name!</span>";
また
h[0] = '<span style="color:red;">Please type a name!</span>';
var h = new Array();
だけである必要がありますvar h = [];
。
h[0] = "<span style="color:red;">Please type a name!</span>";
"
は無効な構文です-文字列を終了するためにどちらが意味されているかをどのように知ることができますか?style='color:red'
(一重引用符)を使用します。
for(i in x)
使用しないでください。
前述のように、ボタンをクリックする代わりに、フォームの送信イベントにバインドします。また、インラインハンドラーは使用せず、イベントリスナーを使用してください。
エラーが発生した場合、ハンドラーはreturn false;
フォームの送信がサーバーに送信されないようにする必要があります。
gdoronの答えを読み、JSLintを使用します。
コードに多くのエラーがあります!
JSLintでコードをテストした後、次のエラーが発生しました。
エラー:2行目の文字22の問題:配列リテラル表記[]を使用してください。var x = new Array();
9行目の22文字目の問題:配列リテラル表記[]を使用します。var h = new Array();
10行目の24文字目の問題:セミコロンがありません。h [0] = "
11行目の12文字目の問題:赤いステートメントに「color」というラベルを付けます。赤色;
11行目の文字12の問題:代入または関数呼び出しが必要でしたが、代わりに式が表示されました。赤色;
12行目の文字5の問題:代入または関数呼び出しが必要でしたが、代わりに式が表示されました。">名前を入力してください!";
13行目の24文字目の問題:セミコロンがありません。h [1] = "
14行目の12文字目の問題:「色」はすでに定義されています。赤色;
14行目の12文字目の問題:赤いステートメントに「color」というラベルを付けます。赤色;
14行目の12文字目の問題:代入または関数呼び出しが必要でしたが、代わりに式が表示されました。赤色;
15行目の文字5の問題:代入または関数呼び出しが必要でしたが、代わりに式が表示されました。">名前を入力する必要があります!";
16行目の24文字目の問題:セミコロンがありません。h [2] = "
17行目の12文字目の問題:「色」はすでに定義されています。赤色;
17行目の12文字目の問題:赤いステートメントに「color」というラベルを付けます。赤色;
17行目の12文字目の問題:代入または関数呼び出しが必要でしたが、代わりに式が表示されました。赤色;
18行目の文字5の問題:代入または関数呼び出しが必要でしたが、代わりに式が表示されました。">有効なメールアドレスを入力する必要があります!";
19行目の24文字目の問題:セミコロンがありません。h [3] = "
20行目の12文字目の問題:「色」はすでに定義されています。赤色;
20行目の12文字目の問題:赤いステートメントに「color」というラベルを付けます。赤色;
20行目の12文字目の問題:代入または関数呼び出しが必要でしたが、代わりに式が表示されました。赤色;
21行目の文字5の問題:代入または関数呼び出しが必要でしたが、代わりに式が表示されました。">パスワードを入力する必要があります!";
22行目の24文字目の問題:セミコロンがありません。h [4] = "
23行目の12文字目の問題:「色」はすでに定義されています。赤色;
23行目の12文字目の問題:赤いステートメントに「color」というラベルを付けます。赤色;
23行目の12文字目の問題:代入または関数呼び出しが必要でしたが、代わりに式が表示されました。赤色;
24行目の文字5の問題:代入または関数呼び出しが必要でしたが、代わりに式が表示されました。">パスワードを確認する必要があります!";
26行目の26文字目の問題:配列リテラル表記[]を使用します。var divs = new Array( "mname"、 "mlname"、 "memail"、 "mpassword"、 "mconfirm");
26行目の26文字目の問題:配列リテラル表記[]を使用します。var divs = new Array( "mname"、 "mlname"、 "memail"、 "mpassword"、 "mconfirm");
26行目の問題26文字:停止、続行できません。(72%スキャン)。
これらの行に""
変更のエラーがあります''
h[0] = "<span style='color:red;'>Please type a name!</span>";
h[1] = "<span style='color:red;'>You must type a last name!</span>";
h[2] = "<span style='color:red;'>You must type a valid email address!</span>";
h[3] = "<span style='color:red;'>You must type a password!</span>";
h[4] = "<span style='color:red;'>You must confirm the password!</span>";
主な問題は、実際にはエラー範囲を定義する方法にあります。たとえば、次のようになります。
h[0] = "<span style="color:red;">Please type a name!</span>";
スタイルを囲む引用符がエスケープされていないため、構文エラーが発生し、文字列が終了します。それは機能全体を壊します。それらをエスケープすると、長い道のりが得られます。
h[0] = "<span style=\"color:red;\">Please type a name!</span>";
ただし、keuneの回答も確認する必要があります。