いいね!数

0

閲覧数
109

こんにちは。今回Javascriptについて質問させてください。

私はまだまだアマチュア故、見よう見まねで今回javascriptに挑戦しました。

以下が今回作成したプログラムになります。

function check(){
    var check = false;
    for(i=0;i<100;i++){
        var pass=prompt("メールアドレスを入力してください","");
        if(pass.match(/^.+@daigaku.jp$/)){
            check=true;
            location.href="アンケート先へ";
        }
        alert("5秒お待ちください。画面が変わらない場合メールアドレスが違います\n");
    }
    if(check==false)
        location.href="https://www.yahoo.co.jp/";
}

といった形です。

やりたい内容としては学生向けに一応ということで学生メールアドレスでアンケートに向かわせる形にしようと組みました。

これでやると、問題点は以下です

・Macでのログインはなぜかできない

・キャンセルを押すとyahooのページでなくアンケート進んでしまう。

といった問題が生じます。本当にいろいろわからないことが多いので教えていただけたらと思います。

よろしくお願いします。

サーバー情報: | クライアント情報: | 
カテゴリ:Notes - 使い方 | タグ:
  | 質問日時:Apr 4, 2017 6:18:29 PM

回答・コメント

いいね!数

0

回答ではありません。

 

まず、ご自身が作成したプログラムで使用している関数について、それぞれヘルプを読みましょう。

prompt関数はOKをクリックしたら入力された文字が、キャンセルをクリックしたらnullが返ってきます。

matchメソッドは文字列に対して、検索を行います。

この辺りは、ブラウザでF12を押してデバッグ機能を有効にして、コンソールを見れば、どんなエラーが発生しているのかが分かります。

何が起きているのかを再度確認して、もっと具体的に質問してください。

 

> Macでのログインはなぜかできない

とありますが、「できない」ではこちらには何も伝わりません。

エラーが発生するのか、画面が何も変わらないのか、yahooのページに移動してしまうのか等、具体的に書いてください。

 

 

また、なぜfor文でループしているのでしょうか?意味があってこれを使っているのでしょうか?

メールアドレスの入力回数の制限のためとしても、100回は多いのでは?

回答日時:Apr 5, 2017 9:59:26 AM