最终编辑 - 答案:感谢大家的帮助。最后,它归结为在更改 url 名称时出现了一些 htaccess 问题,并且出于某种奇怪的原因,即使在引用根 (./ajax) 时它也不喜欢它。我不知道为什么仍然,但它只是没有。当我硬编码整个 URL 时,它起作用了。可笑 - 感谢大家的帮助。每天都是上学日......
我一生都无法弄清楚为什么这是错误的-有人可以再看一眼-这可能真的很愚蠢,在此先感谢您的帮助:
愚蠢地编辑我输入了错误的 URL - 但是......现在我输入了正确的 URL,该网站只是挂起并崩溃。请问有什么想法吗?
编辑 2只是为了给这篇文章添加更多细节,“加载...”div 出现了,所以 ajax 肯定会启动,然后页面崩溃并变得无响应。我添加了额外的验证以确保 PHP 文件存在。确实如此。PHP 文件只是简单地回显了一个 h1 标记。这是一个完整的谜,因为我昨天在家庭服务器上做了一个类似的 ajax 请求,它工作得很好。
编辑 3到目前为止,感谢大家对此的投入和帮助。经过进一步测试,我从 JQuery AJAX 请求中删除了 data 属性,但它仍然完全没有响应并崩溃。这可能与服务器有关吗?我真的没办法了……
HTML:
<input id="pc" class="sfc" name="ProdCat[]" type="checkbox" value="">
<input id="psc" class="sfc" name="ProdSubCat[]" type="checkbox" value="">
<input id="bf" class="sfc" name="BrandFil[]" type="checkbox" value="">
查询:
$('input[type="checkbox"]').change(function(){
var name = $(this).attr("name");
var ProdCatFil = [];
var ProdSubCatFil = [];
var BrandFil = [];
// Loop through the checked checkboxes in the same group
// and add their values to an array
$('input[type="checkbox"]:checked').each(function(){
switch(name) {
case 'ProdCatFil[]':
ProdCatFil.push($(this).val());
break;
case 'ProdSubCatFil[]':
ProdSubCatFil.push($(this).val());
break;
case 'BrandFil[]':
BrandFil.push($(this).val());
break;
}
});
$("#loading").ajaxStart(function(){
$(this).show();
$('.content_area').hide();
});
$("#loading").ajaxStop(function(){
$(this).hide();
$('.content_area').show();
});
$.ajax({
type: "GET",
url: '../ajax/ajax.php',
data: 'ProdCatFil='+ProdCatFil+'&ProdSubCatFil='+ProdSubCatFil+'&BrandFil='+BrandFil,
success: function(data) {
$('.content_area').html(data);
}
}).error(function (event, jqXHR, ajaxSettings, thrownError) {
$('.content_area').html("<h2>Could not retrieve data</h2>");
//alert('[event:' + event + '], [jqXHR:' + jqXHR + '], [ajaxSettings:' + ajaxSettings + '], [thrownError:' + thrownError + '])');
});
});
PHP(只是为了证明它的工作):
echo '<h1>TEST TEST TEST </h1>';