我知道“请求”组件应仅在该请求期间有效。因此,我的令人费解的问题。
考虑以下形式:
<form action="${requestUri}" id="someform">
<!-- Leave out some really boring stuff that doesn't affect the question -->
<input type="submit" id="ButtonA" value="Button A - Not AJAX"/>
<input type="submit" id="ButtonB" value="Button B - AJAX" />
</form>
它附加了以下jQueryButtonB
<script type="text/javascript">
$(document).ready(function() {
$("#ButtonB").click(function(){
var options = {
type: 'POST',
async: false,
dataType: 'json',
success: function(data){
//Do some Work
},
error: function(xhr, status, error) {
}
};
$('#someform').ajaxForm(options);
})
}
</script>
如果我按下ButtonA
表单已成功提交并重新加载页面。如果我按下ButtonB
AJAX 命令成功执行并且正确的更新反映在页面上。
然而。如果我按ButtonB
然后按ButtonA
,即使没有绑定到此按钮的“JSON”操作,Accept Header
仍然会发送第二个请求。application/json, text/javascript, */*; q=0.01
dataType
完成该功能后是否需要重置?
任何建议表示赞赏。