0

我有一个我想通过 ajax 提交的文本区域。当我尝试输出值时,我只得到 [object Object]

jQuery(阿贾克斯)

$("#insertAddresses").click(function() {

   $.ajax({
      type: "POST",
      url: "insertAddr.php",
      data: 'addresses=' +  
   }).done(function(list) {
      //getList();  // run query to get addresses and populate list
   });
});

PHP(我试过)

$_POST['addresses']; 

或者

$addresses = explode("\n", $_POST['addresses']);

无论我尝试过什么,总是返回 [object Object]

帮助?!

4

2 回答 2

1

您的服务器脚本正在返回一个 json 对象,该对象被 JavaScript 正确识别为对象。你可以用那个对象做很多事情,但你不能把它放在你的网站上,因为它不是 html 或文本。

以下是 json 的简短描述:http ://en.wikipedia.org/wiki/JSON

我不知道您的数据是如何构成的,所以我无法告诉您如何访问您的数据。但是在这样的 json 中(来自维基百科的示例):

{
     "firstName": "John",
     "lastName" : "Smith",
     "age"      : 25,
     "address"  :
     {
         "streetAddress": "21 2nd Street",
         "city"         : "New York",
         "state"        : "NY",
         "postalCode"   : "10021"
     },
     "phoneNumber":
     [
         {
           "type"  : "home",
           "number": "212 555-1234"
         },
         {
           "type"  : "fax",
           "number": "646 555-4567"
         }
     ]
 }

您可以,即,简单地使用以下方法超出 firstName:

data.firstName

瞧,有你预期的数据。

于 2012-04-03T20:45:18.903 回答
-1

你的数据应该是一个对象:

data: { adresses: "value" }
  • 只是一个小提示:你在 jQuery 中所做的事情的简写 ajax-call 是 $.post(.... 然后你可以失去“类型”。完全一样,但我认为它只是更整洁一点.
于 2012-04-03T20:47:24.827 回答