[英]ASP.NET MVC5, creating a timer for quiz using javascript
這是我使用的代碼,我無法弄清楚為什么在0秒后表單無法提交到“謝謝”頁面。 我試圖從@using (htmlbeginform())
語句調用提交按鈕。 請幫忙。
<form name="counter">
<input type="text" size="8"
name="d2">
</form>
<script type="text/javascript">
var minutes = 1
var seconds = 00
document.counter.d2.value = '30:00'
function display()
{
if (seconds <= 0)
{
minutes -= 1
seconds += 59
}
if (minutes <= -1)
**{
$(document).ready(function () {
setTimeout(function () { nextQuestion() }, 5000);
$("#questionform").submit(function () {
alert("Submit after 5 second.");
});
});
function nextQuestion() {
$("#questionform").trigger("submit");
}
}** **PART of code in between ** is where I am having trouble, cant figure out what is wrong**
else
seconds -= 1
document.counter.d2.value = minutes + ":" + seconds
setTimeout("display()", 1000)
}
display()
</script>
@using (Html.BeginForm("ThankYou", "Questions", FormMethod.Post, new { @id = "questionform" }))
{
@Html.EditorFor(x => x.Questions)
<input type="submit" id="submit" class="btn btn-default" value="Submit" />
}
嘗試在此處使用此按鈕,以提交零秒
$(document).ready()
事件僅在完全加載文檔時觸發,因為您在加載文檔后附加了此事件,因此永遠不會觸發。
您必須采用以下方式:
function nextQuestion() {
$("#questionform").trigger("submit");
} //it's better declare your functions outside an if statment
if (minutes <= -1) {
setTimeout(function () { nextQuestion() }, 5000);
$("#questionform").submit(function () {
alert("Submit after 5 second.");
});
/*if you submit,
the page changes and this alert will never appear*/
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.