ajax调用JQUERY中的变量数据

ajax调用JQUERY中的变量数据,jquery,ajax,Jquery,Ajax,我试图在jquery的AJAX调用中使用变量,但它不起作用。move变量包含不同的值。请检查以下代码: var $move = 'next'; $.ajax({ type: "POST", url: "somephp.php", data: {$move:1}, }); 建议在数据中使用$move变量的任何方法。如果您想在POST请求中使用变量, 您需要创建一个独立的JSON对象: var name = 'next'; var dataObject = {}; dataOb

我试图在jquery的AJAX调用中使用变量,但它不起作用。move变量包含不同的值。请检查以下代码:

var $move = 'next';

$.ajax({
   type: "POST",
   url: "somephp.php",
   data: {$move:1},
});

建议在数据中使用$move变量的任何方法。

如果您想在POST请求中使用变量, 您需要创建一个独立的JSON对象:

var name = 'next';
var dataObject = {};
dataObject[name] = 1;

$.ajax({
   type: "POST",
   url: "somephp.php",
   data: dataObject,
   complete : function() {
     // success!
   }
});
应该是

$.ajax({
   type: "POST",
   url: "somephp.php",
   data: {"data":$move},
});

要发布$move变量的值,请执行以下操作:

$.ajax({
   type: "POST",
   url: "somephp.php",
   data: {move: $move}
});

您可以执行类似于
数据的操作:$move+“=1”

如果要使用变量作为属性的名称,请使用数组表示法

使用数组表示法的代码:

var $move = 'next';
var data = {};
data[$move] = 1;

$.ajax({
   type: "POST",
   url: "somephp.php",
   data: data,
});

(帖子显然不起作用,因此请检查控制台以查看发布的内容。)

看起来您正在尝试在javascript中使用PHP变量。您可以使用.serialize来收集数据并将其传递给ajax调用。但是,对于使用不同的命名变量调用值对的名称,您需要从正在传递的php页面收集这些信息

例如:

$.get("jQueryFunctions.php?action=checkCaptula",$('#resetPasswordDiv :input').serialize()).done(function(data){ ....

虽然这是一个.get而不是.ajax,但它只是.ajax调用的简写。passwordDiv包含带有名称和id的HTML输入。它收集信息并将其传递到php页面进行处理。

我正在寻找类似的内容。 我想要一个变量作为键,一个变量作为值


数据接受键值对。现在,你的$move是关键,这就是为什么它不起作用。让它成为一种价值,它就会起作用。。像data:{“data”:$move}我想用户要问的是如何为值对的键部分传递不同的东西。如果他真的想将变量用作键怎么办?如果您的问题是变量应该用作属性名,而不是它的值,请参阅。它允许使用变量和。这里肯定有你想要的例子。例如,我曾经在一个jQuery UI对话框中遇到过这种情况,我需要动态多语言按钮标签。$move是键,而不是值。我猜他想发布$move的值。让我们等待他澄清。:)实际上,在我看来,
$move
是一个变量,OP会将其用作键,值应该是
1
。到目前为止,只有Wolfram做对了!回答时假设用户希望变量作为键。+1,这是有效的,与大多数其他答案(当然不是我的答案:)相比,它解决了正确的问题。我认为它只是一个JS变量。是的,
$
前缀有时用于标识jQuery对象。但是,在本例中,它是一个简单的字符串,但可能不代表真正的代码,但出于这个问题的考虑,它只是一个简单的示例。这是一个JavaScript变量。上下文之外,它令人困惑。@Kris$是javascript中用作变量名的有效字符。$、$$、$$$都是有效的javascript变量名。。就像aa bbb ccc etcI有一个类似的问题(需要在名称中允许一个变量),这正是需要的。完美的答案!我必须通过大量研究来解决这个问题,因此作为参考,当
数据
是一个纯对象而不是字符串时,使用
complete:function(response)
返回一个纯对象。例如,
alert(response)
返回
[object object]
console.log(response)
返回
对象{readyState:4,responseText:“example”,status:200,statusText:“OK”}
。因此,要检索
responseText
,请使用
success:function(response)
。根据Subir的回答,我尝试了
data:dataKey+“=”+dataValue,
,结果成功了。
let dataPair = {};
dataPair[dataKey] = dataValue;
$.ajax({
  url: TheAPIPath,
  data: dataPair,
  method: "GET",
(etc)