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

サーバースクリプトは、JavaScript によってオブジェクトとして正しく認識される json オブジェクトを返しています。そのオブジェクトを使ってさまざまなことを行うことができますが、html やテキストではないため、Web サイトに配置することはできません。

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 呼び出しは $.post(.... であり、「型」を失う可能性があります。まったく同じことを行いますが、少しすっきりしたと思います。 .
于 2012-04-03T20:47:24.827 に答える