在我的 dashboard.php 中,我有一个基于用户点击按钮调用的Javascript函数。单击该按钮时,它会调用名为getTeamMembers
的JavaScript函数,并将值传递给它。传递给此函数的值然后被发送到PHP函数(它也位于dashboard.php中)。
然而,我没有取得任何成功,并希望有人可以指导我在哪里出错。当涉及到AJAX时,我是一个菜鸟,所以我认为我犯了一个愚蠢的错误。
我知道我的函数肯定是在函数内快速window.alert(myVar);
之后传递给它的预期变量数据。
这是我到目前为止所做的:
function getTeamMembers(teamID,lecturer_id) {
var functionName = 'loadTeamMembersChart';
jQuery.ajax({
type: "POST",
url: 'dashboard.php',
dataType: 'json',
data: { functionName: 'loadTeamMembersChart', teamID: teamID, lecturer_id: lecturer_id },
success: function(){
alert("OK");
},
fail: function(error) {
console.log(error);
},
always: function(response) {
console.log(response);
}
}
);
}
在调用所需的php函数之前,我在我的php Dashboard类从文件顶部开始之前收集发送的变量。我计划将变量传递过去,我可以确定它们实际存在。
然而,当我点击按钮时,发送的数据不会回显任何内容。
if ($_SERVER['REQUEST_METHOD'] == 'POST'){
if (!empty($_POST["teamID"]) && !empty($_POST["lecturer_id"]))
{
$teamID = $_POST['teamID'];
$lecturer_id = $_POST['lecturer_id'];
echo $teamID;
echo " is your teamID";
}
else
{
echo "no teamID supplied";
}
}
答案 0 :(得分:-1)
你成功函数中的else
语句,而不是你如何设置失败回调,请尝试以下操作并告诉我们你在控制台中看到了什么。
function getTeamMembers(teamID,lecturer_id) {
jQuery.ajax({
type: "POST",
url: 'dashboard.php',
dataType: 'json',
data: {functionname: 'loadTeamMembersChart', arguments: [teamID, lecturer_id]},
success: function(data) {
console.log(data);
},
fail: function(error) {
console.log(error);
},
always: function(response) {
console.log(response);
}
});
}
答案 1 :(得分:-2)
看起来你的函数在进入下面的语句时没有返回成功消息。
if ($result) {
"Awesome, it worked"
}
请尝试在字符串前添加一个返回。
if ($result) {
return "Awesome, it worked";
}
这可能是其他因素,但您提供的信息不足以进行任何进一步的分析。