如何使用ajax将javascript变量传递给php
我试图将单击按钮时得到的javascript变量传递给php,然后运行mysql查询。我的代码:如何使用ajax将javascript变量传递给php,javascript,php,ajax,variables,Javascript,Php,Ajax,Variables,我试图将单击按钮时得到的javascript变量传递给php,然后运行mysql查询。我的代码: function ajaxCall(nodeID) { $.ajax({ type: "POST", url: "tree.php", data: {activeNodeID : nodeID}, success: function(data) { alert("Success!"); } } ); } function onButtonClick(e, data) { s
function ajaxCall(nodeID) {
$.ajax({
type: "POST",
url: "tree.php",
data: {activeNodeID : nodeID},
success: function(data) {
alert("Success!");
}
}
);
}
function onButtonClick(e, data) {
switch (data.name) {
case "add":
break;
case "edit":
break;
case "delete":
nodeid = data.context.id;
ajaxCall(nodeid);
//query
break;
}
}
<?php
if (isset($_POST['activeNodeID'])) {
$nodeid = $_POST['activeNodeID'];
}
else {
$nodeid = 0;
}
?>
函数ajaxCall(nodeID){
$.ajax({
类型:“POST”,
url:“tree.php”,
数据:{activeNodeID:nodeID},
成功:函数(数据){
警惕(“成功!”);
}
}
);
}
功能按钮点击(e,数据){
开关(data.name){
案例“添加”:
打破
案例“编辑”:
打破
案例“删除”:
nodeid=data.context.id;
ajaxCall(nodeid);
//质疑
打破
}
}
我以前没有这样做过,所以我不知道为什么这不起作用。有什么建议吗?
编辑:也许我解释得不够好。我意识到php是服务器端,javascript是客户端。我有一个使用javascript显示的组织结构图,它基于保存在数据库中的所有信息。我需要做的是:单击其中一个javascript按钮(编辑、删除、添加)时,获取活动节点的ID,并将其用作php中的变量来运行查询。例如,删除数据库中的行。最好的方法是什么?这里有一点混乱,
success
值存储了一个回调,当Ajax调用成功时调用该回调。举一个简单的例子,假设您有一个如下的Ajax调用:
function ajaxCall(nodeID) {
$.ajax({
type: "POST",
url: "tree.php",
data: {activeNodeID : nodeID},
success: function(data) {
console.log(data.my_message);
}
});
这将调用一个名为tree.PHP
的PHP页面。在这个页面中,您进行一些计算,然后返回一个值,在本例中为JSON。因此页面看起来是这样的(请注意,我保持简单,您应该始终验证输入值):
这个简单的PHP页面将该字符串作为JSON返回。在javascript中,在指定的回调(即
success
)中,您将数据
作为包含PHP的$to\u返回值的对象。您所写的内容没有真正意义,因为PHP是一种服务器语言,不能像JavaScript一样从浏览器中处理。这里有一点混乱,success
值存储了一个回调,当Ajax调用成功时会调用该回调。举一个简单的例子,假设您有一个如下的Ajax调用:
function ajaxCall(nodeID) {
$.ajax({
type: "POST",
url: "tree.php",
data: {activeNodeID : nodeID},
success: function(data) {
console.log(data.my_message);
}
});
这将调用一个名为tree.PHP
的PHP页面。在这个页面中,您进行一些计算,然后返回一个值,在本例中为JSON。因此页面看起来是这样的(请注意,我保持简单,您应该始终验证输入值):
这个简单的PHP页面将该字符串作为JSON返回。在javascript中,在指定的回调(即success
)中,您将数据
作为包含PHP的$to\u返回值的对象。您所写的内容没有真正意义,因为PHP是一种服务器语言,不能像JavaScript一样从浏览器中处理。这里有一点混乱,success
值存储了一个回调,当Ajax调用成功时会调用该回调。举一个简单的例子,假设您有一个如下的Ajax调用:
function ajaxCall(nodeID) {
$.ajax({
type: "POST",
url: "tree.php",
data: {activeNodeID : nodeID},
success: function(data) {
console.log(data.my_message);
}
});
这将调用一个名为tree.PHP
的PHP页面。在这个页面中,您进行一些计算,然后返回一个值,在本例中为JSON。因此页面看起来是这样的(请注意,我保持简单,您应该始终验证输入值):
这个简单的PHP页面将该字符串作为JSON返回。在javascript中,在指定的回调(即success
)中,您将数据
作为包含PHP的$to\u返回值的对象。您所写的内容没有真正意义,因为PHP是一种服务器语言,不能像JavaScript一样从浏览器中处理。这里有一点混乱,success
值存储了一个回调,当Ajax调用成功时会调用该回调。举一个简单的例子,假设您有一个如下的Ajax调用:
function ajaxCall(nodeID) {
$.ajax({
type: "POST",
url: "tree.php",
data: {activeNodeID : nodeID},
success: function(data) {
console.log(data.my_message);
}
});
这将调用一个名为tree.PHP
的PHP页面。在这个页面中,您进行一些计算,然后返回一个值,在本例中为JSON。因此页面看起来是这样的(请注意,我保持简单,您应该始终验证输入值):
这个简单的PHP页面将该字符串作为JSON返回。在javascript中,在指定的回调(即success
)中,您将数据
作为包含PHP的$to\u返回值的对象。您编写的内容没有真正意义,因为PHP是一种服务器语言,不能像JavaScript一样从浏览器中处理。这是您的PHP还是在tree.PHP文件中?PHP代码是在加载包含JavaScript代码的页面时执行的,而不是在进行Ajax调用时执行的(如果您有意这样做的话)。看看生成的JS代码。您将看到success
回调的内容为空。请解释您试图实现的目标,以便我们能够更好地帮助您。这是您的PHP还是在tree.PHP文件中?PHP代码是在加载包含JavaScript代码的页面时执行的,而不是在进行Ajax调用时执行的(如果这是您的意图)。看看生成的JS代码。您将看到success
回调的内容为空。请解释您试图实现的目标,以便我们能够更好地帮助您。这是您的PHP还是在tree.PHP文件中?PHP代码是在加载包含JavaScript代码的页面时执行的,而不是在进行Ajax调用时执行的(如果这是您的意图)。看看生成的JS代码。您将看到success
回调的内容为空。请解释您试图实现的目标,以便我们能够更好地帮助您。这是您的PHP还是在tree.PHP文件中?PHP代码是在加载包含JavaScript代码的页面时执行的,而不是在进行Ajax调用时执行的(如果这是您的意图)。看看生成的JS代码。您将看到success
回调的内容为空。请解释你想要达到的目标,这样我们才能更好地帮助你。回答得好,但你真的应该