我有一个包含2个部分的PHP页面。左窗格有一个运行的MySQL查询,并生成一个类别列表作为链接。右窗格应具有在单击左窗格中的链接时显示的子类别。
我在附加的JS文件中有一些AJAX,它应该将左窗格中的链接中的ID传递到右窗格中的查询中。该查询应该运行。如果我取出变量,它就会运行。
PHP / SQL查询工作正常。 JS没有。
我认为这是做到这一点的恰当方式。
ajax.js
$( document ).ready(function() {
$( 'a' ).on( 'click', function() {
var a = $( this ).attr( 'id' );
$.ajax({
type: "POST",
url: "categories.php",
data: "ajax="+a,
success: function(response){
alert( a );
},
error: function() {
alert('Error');
}
})
});
});
我被告知一切正常,但我无法在PHP中调用$_POST['ajax']
。也许我的页面没有被刷新。页面上没有表格。
最后,我的文件层次结构的categories.php包含一个包含列表,这些包含在一个非公开的文件夹中。
答案 0 :(得分:1)
我认为你的ajax语法错了。如果您的参数为a
且帖子标识符为ajax
,请尝试此操作:
$( document ).ready(function() {
$( 'a' ).on( 'click', function() {
var a = $( this ).attr( 'id' );
$.ajax({
type: "POST",
url: "categories.php",
data: {ajax : a},
success: function(response){
alert( a );
},
error: function() {
alert('Error');
}
});
});
});
答案 1 :(得分:0)
尝试在$ .ajax调用上设置async:false。另外,如何从php返回数据?您是否在使用JSON_ENCODE进行数据处理?