我正在创建一个允许用户选择任意数量答案之一的网站。最终,我已经完成了所有工作。系统工作,但如果用户在页面上超过 30 秒,提交似乎不起作用。网站上没有设置应该导致此问题的超时设置,而且我似乎无法在 jQuery .post 中找到导致此问题的原因。这是我正在使用的代码:
function submitAns(str, num) {
var radios = document.getElementsByName(str);
for (var i = 0, length = radios.length; i < length; i++) {
if (radios[i].checked) {
$.post('saveAnswer.aspx', {
'answer': String(radios[i].value),
'question': num,
'comment': String($("#comment").val())
}, function (msg) {
if (msg == "failed") {
jAlert('Error Saving Data.');
} else {
window.location = "Voting-Page";
}
});
}
}
}
这是在用户单击一个类似于此的表单的按钮后触发的:
<input type='radio' name='group0' value='Yes'>Yes
<input type='radio' name='group0' value='No'>No
<textarea id='comment' rows='7' cols='40'></textarea>
<input type="submit" name="submitbtn" value="Submit" onclick="submitAns('group0','0');" class="btnSubmit" />
如果我在 30 秒的时间范围内提交表格,它会毫无问题地通过。否则,页面会重新加载,并且不会提交表单。我尝试通过添加 .post 向 .post 添加大超时'timeout': 300000
,但这仍然不起作用。我还尝试删除 jAlert 并检查是否有任何站点错误(未找到)。这里可能是什么问题?