使用AJAX发送JavaScript变量

时间:2013-03-29 16:32:12

标签: javascript ajax

有人可以指出我如何使用AJAX发送JavaScript变量。

JavaScript的:

var d=new Date();
document.write(d);

AJAX:

$.ajax
        ({
          type: 'POST',
          url: 'save.php',
          cache: false,
          data: { document.write(d); // Just for example
},

其他一切都很棒。感谢。

3 个答案:

答案 0 :(得分:2)

您无法发送“变量”。您只能发送字符串(或可以转换为字符串的内容)。 (您可以将这些字符串存储在变量中)。

日期对象(存储在d中)可以转换为字符串,因此您可以发送该字符串。

document.write()的返回值始终为undefined,因此发送它的意义不大。

您似乎正在使用jQuery。 data属性需要标准的JavaScript对象。对象由一组键/值对组成。您需要为您的价值提供一把钥匙。

data: { date: d }

答案 1 :(得分:1)

在此示例中,您可以将值传递给您想要的任何参数名称:

$.ajax({
    type: 'POST',
    url: 'save.php',
    cache: false,
    data: { date: new Date()}
});

或者您可以像这样使用变量:

    var d = new Date();
    $.ajax({
        type: 'POST',
        url: 'save.php',
        cache: false,
        data: { date: d}
    });

答案 2 :(得分:-1)

使用JSON.stringify()将对象转换为JSON格式:

$.ajax
    ({
      type: 'POST',
      url: 'save.php',
      cache: false,
      data: JSON.stringify(d)
},

当然,在服务器端,您必须使用JSON解析器来解释数据。