2016-07-18 19 views
0

最後に小さいものを除いてうまく動作するjQueryクイズがあります。私は、アプリケーションが最終ページ(ThankYouPage.html)に行き、いくつかの要約統計量を与えることを望みます。それはページに行きますが、「この短いクイズを取ってくれてありがとう...」という部分だけが表示されます。要約の統計情報は表示されません。これが起こっていることを教えてください。私のコードは以下の通りです。ありがとうございました。私の最後のコード行を実行していません

JS

function finalGrade() { 
    //pulls the current counter from local storage 
    var counter = localStorage.getItem('counter'); 
    var myPercent = (counter/3) * 100; 
    var myFinalPercent = myPercent.toFixed(2); 
    if (myPercent < 80) { 
     var failOrPass = "Failing"; 
      var QuestionNumber = "Quiz on Croatia."; 
      var QuizDesc = "Quiz questions on the country of Croatia."; 
      var name = localStorage.getItem('name'); 
      var email = localStorage.getItem('email'); 
      QuizFailed(email, name, QuestionNumber, QuizDesc); 
     } else { 
      var failOrPass = "Passing"; 
      //QuizPassed(); 
      } 
    document.location.replace("ThankYouPage.html"); 
    $('#summaryID').append("You scored " + counter + " out of a possible 3 for " + myFinalPercent + "%. This results in a " + failOrPass + " score."); 
} 

HTML5

<body> 

<div class="container"> 
    <h1>Thank you for taking this short quiz on the country of Croatia.</h1> 
    <p id="summaryID"></p> 
</div> 


<script src="js/init.js" type="text/javascript"></script> 
<script src="js/xapiwrapper.min.js" type="text/javascript"></script> 
</body> 

答えて

0

document.location.replace( "ThankYouPage.html")は、基本的に次の行に到達されることはありません理由である、離れて移動します。 ..あなたがロードするように指示したページにブラウザが移動しました

1

document.location.replace()呼び出しは本質的にあなたの現在のページから移動することになります。

// Navigates to Thank You page 
document.location.replace("ThankYouPage.html"); 
// At this point you are already navigating, so this is ignored 
$('#summaryID').append('...'); 

あなたは自分の価値観を期待している場合:これで問題はまだ任意のコードが実行されるということである(つまり、あなたの出力コード)実行されませんので、離れてからのナビゲート、およびされているページ上で実行されようとしています次のページに表示するには、サーバーサイドのコード、クエリ文字列パラメータ、または次のページでアクセスするローカルストレージを介して、何らかの方法でそれらを渡すことを検討することができます。

関連する問題