2014-07-25 21 views
0

下面是控制器和控制器m的應用程序視圖,通過持續時間的開始時間和結束時間的差異,我想訪問此持續時間以查看頁面,以便我可以將持續時間值分配給`javascript計時器和開始時鐘我已經完成使用viewbag,但即時通過null值im即時在線考試工作,我想開始一個計時器,如倒計時時間,當用戶點擊開始 在任何人可以幫助我創建一個計時器控制採取在MVC在mvc中使用Javascript的計時器

public ActionResult ApplyForTest(int Test_Id) 
     { 
      EAssessmentNew.BAL.StudentBal stuBal = new EAssessmentNew.BAL.StudentBal(); 
      ViewBag.TestId = Test_Id; 
      DataTable testSchedule = stuBal.getTestDateTime(Test_Id); 
      ViewBag.Sysdate = DateTime.Now.ToShortDateString(); 
      ViewBag.SysTime = DateTime.Now.ToShortTimeString(); 

      for (int i = 0; i < testSchedule.Rows.Count; i++) 
      { 
       Test Date_Time = new Test(); 
       ViewBag.Test_Date = testSchedule.Rows[i]["Test_Date"].ToString(); 
       ViewBag.Start_Time = testSchedule.Rows[i]["Start_Time"].ToString(); 
       ViewBag.End_Time = testSchedule.Rows[i]["End_Time"].ToString(); 

       DateTime strtTime = DateTime.Parse(ViewBag.Start_Time); 
       DateTime endTime = DateTime.Parse(ViewBag.End_Time); 

       TimeSpan duration = (endTime - strtTime); 
       ViewBag.a = duration; 

      } 
      return View(); 
     } 




      @model List<EAssessmentNew.Models.Question> 



      @{ 
       ViewBag.Title = "TestStarted"; 
       Layout = "~/Views/StudentMaster.cshtml"; 
       TimeSpan t = ViewBag.a; 

      } 


       <script src="~/Scripts/jquery.js"></script> 
       <script src="~/Scripts/jquery-1.5.1.js"></script> 

       <script type="text/javascript"> 

        var myVar = setInterval(myTimer, 1000); 
        var d = '@ViewBag.duration'; 
        alert(d); 
        var testDate = '@ViewBag.Test_Date'; 
        var startTime = '@ViewBag.Start_Time'; 
        var EndTime = '@ViewBag.End_Time'; 

        d.setHours(00, d, 59, 00); 
        function myTimer() { 

         if (d.getSeconds() <= 1) 
          d.setMinutes(d.getMinutes() - 1, 59, 00); 

         var h = d.getHours(); 
         var m = d.getMinutes(); 
         var s = d.getSeconds() - 1; 


         if (m == 0 && s == 1) 
          window.location.href = "showresults.aspx"; 
         document.getElementById("lblCtime").innerHTML = h + ":" + m + ":"s; 

         d.setMinutes(m, s); 
         //setInterval(myTimer, 1000); 
        } 
       </script> 

以上提及兩個時間之間差是我的應用程序的從控制器米傳遞的起始時間和結束添差的控制器和圖在持續時間,我想訪問這個持續時間來查看頁面,所以我可以分配持續時間值`javascript計時器,並啓動時鐘我使用viewbag完成,但即時通過null值即時通訊工作在線考試,我想啓動一個計時器

我用所有必要的JavaScript,但m到處空值上的ViewPage viewbag當它開始 用戶點擊任何人可以幫助我米通過採取MVC兩個時間之間的區別是創建一個計時器控制倒計時時間

+0

標點符號。請。也許提到的是ASP.NET MVC – Pinoniq

+0

是的,它在asp.net中 – user3876282

回答

0

我會認真看看SignalR,而不是在javascript中這樣做。您可以讓您的計時器在連接到SignalR集線器的特定Web連接的服務器上運行,然後讓SignalR Hub向您的javascript方法廣播運行時鐘。