我在UI上有一个添加消息的按钮,当用户点击它时,表单被提交,同时用户多次点击刷新(F5),这导致多次显示相同的消息。为了解决这个问题,我将表单从同步提交转换为Asychronous,但它仍然无法正常工作。请协助。以下是代码:
之前的代码:
<td><input class="buttonred" type="submit" value="Confirm Add" name="submit_message"></td>
<s:form action="upd-message" method="POST" validate="true" onsubmit="validateMsg();return false;" enctype="multipart/form-data">
代码之后:
<tr>
<td width="15%"><strong>Subject:</strong></td>
<td width="30%" class="contentformnoline">
<input name="subject" size="12" maxlength="100">
</td>
<td width="20%"> </td>
</tr>
<tr>
<td><strong>Message:</strong></td>
<td class="contentformnoline">
<textarea cols="65" rows="3" name="content" wrap="hard"></textarea>
</td>
<td> </td>
</tr>
<div id="loading_reloadpage" style="display:none;">
<tagfile:loading id="loading_reloadpage_img" size="11px"/> Reloading information...
</div>
<tr id="test-sc-step2-errors-row" style="display:none">
<td></td>
<td colspan="2" class="contentform" height="30"><span id="newSR-sc-step2-errors" class="alert"></span></td>
</tr>
在我的jquery.js
中 jQuery.submitMessage= function() {
incidentsInspect.submitMessage = function() {
var bError = true;
var subject = $('#subject');
alert("subject"+$('#subject'));
var content = $('#content');
alert("content"+$('#content'));
if (this.isEmpty(subject)) {
$('#test-sc-step2-errors-row').html('Please enter a subject.');
}
else if (this.isEmpty(content)) {
$('#test-sc-step2-errors-row').html('Please enter a content.');
}
else {
bError = false;
}
if (bError) {
$('#test-sc-step2-errors-row').show();
} else {
//$('#loading_reloadpage').show();
//$('#loading_reloadpage_img').show();
show("loading_reloadpage");
show("loading_reloadpage_img");
var dataToPost = {
actionType : $('#actionType').val()
};
var url = '/portal/tickets/update-incident.action';
$.post(url, dataToPost,
function(data) {
}
).error(incidentsInspect.handleError);
}
};
无效的事情:
请协助。
答案 0 :(得分:0)
在处理/处理提交的JSP / Servlet中,最后执行此操作:
response.sendRedirect("someotherpage");
return;
由于此重定向发生在服务器端,因此会导致处理页面未存储在浏览器历史记录中,因此无法通过后退按钮访问它,因为您无法访问它,你无法点击它。
但我还应该指出:根本没有关于你的提交的异步。