我有2个应用程序,一个基于struts,另一个是spring。
我从struts应用程序调用一个url来弹出并将响应作为模型(这是一个jsp页面)。在那个模型jsp页面中我有一个document.ready函数。并且对于第一次加载我显示显示一个数据表。当我单击该链接时,我在数据表上方有另一个链接它正在调用ajax函数到spring应用程序,它应该打开另一个数据表并隐藏现有的数据表。但是document.ready再次加载,因此显示了之前的数据表。但是,如果我第二次点击该链接,那么它显示正确的数据表。
struts app:
<body>
<div id="divcontent"></div>
</body>
<script type="text/javascript">
$(document).ready(function() {
$.ajax({
type: "POST",
url: '/employee/index.app?id=1234',
data: "" ,
success: function(response){
$('#divcontent').html(response);
},
error: function(e){
alert('Error: ' + e);
console.log(e)
}
});
});
</script>
并且响应代码的一部分是:
$(document).ready(function() {alert(211);
$.ajaxSetup({
cache : false
});
$(document).ajaxStart(function() {
$('#spinnerBlock').addClass('spinner-block');
$('#cndLoadSpinnerModal').show();
});
$(document).ajaxStop(function() {
$('#spinnerBlock').removeClass('spinner-block');
$('#cndLoadSpinnerModal').hide();
});
if (isUserRoleAdmin) {
loadAdminUserTable();
} else {
alert(21);
loadCandidateTable();
}
});
我在想,因为整个响应都是以html内容的形式出现,并从spring应用程序加载到struts应用程序,所以struts应用程序无法识别document.ready已经加载或者没有这就是为什么它再次调用。
你能帮我吗?