我有以下情况:
在我的本地服务器上,我进行了此次调用
文件:history.js
$(document).ready(function() {
$('button[data-pid]').click(function() {
$.ajax({
cache: false,
data: JSON.stringify({ pch_id: $(this).data('pid') }),
dataType: 'json',
type: 'POST',
url: REPAIR_BROKEN_BANNER_URL
}).done(function(data) {
$('#fix-broken-banner-text').text(data.message);
if (!data.error) {
$('#fix-broken-banner-modal').on('hidden.bs.modal', function() {
window.location.href = window.location.href;
});
}
$('#fix-broken-banner-modal').modal('show');
}).fail(function() {
$('#fix-broken-banner-text').text(REPAIR_BROKEN_ERR_GENERIC);
$('#fix-broken-banner-modal').modal('show');
});
});
});
页面包含
<script type="text/javascript" src="/js/history.js"></script>
<script type="text/javascript">
var REPAIR_BROKEN_BANNER_URL = '/admin/banners/repair-broken-banner/';
var REPAIR_BROKEN_ERR_GENERIC = 'Unable to perform the action';
</script>
服务器始终使用JSON响应,但仍然发生错误。
问题出在生产服务器上。 (生产服务器是Debian的虚拟服务器)。当ajax调用该操作时,它总是一个空白的响应,并带有以下标题:
请求网址 http://debug.xxxxxxx.xxx/admin/banners/repair-broken-banner/
请求标题小心:显示临时标题。
表格数据
我认为这可能是一个php错误,但是如果我在第一次脚本调用时写了一条消息并死掉,那么该页面仍然是空白的。在apache访问日志中,没有任何跟踪调用。 我在firefox中尝试了这个调用,它没有出现在XHR选项卡中,就像调用它没有执行一样。
编辑: Javascript部分已完成
答案 0 :(得分:1)
我想你正在使用Adblock plus。 它与Javascript无关,而与URL本身有关。
您在网址中有横幅字样。 请求网址:http://debug.xxxxxxx.xxx/admin/ 横幅 / repair-broken-banner /
为您的网站停用Adblock plus,它应该可以正常运行。