• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:jQueryでAJAXを利用しJSONデータを取得)

jQueryでAJAXを利用しJSONデータを取得

このQ&Aのポイント
  • 商品コードを入力したら、AJAXで商品名と価格を取得して表示させ、それを確認して個数を入力して注文票を作ろうとしています。
  • 商品名だけの取得は何とかできたのですが、商品名と価格といったように複数データを取得するのに苦労しています。
  • JSON形式で受け取ればいいのだろうと考えて、そうしているのですが、うまくいきません。

質問者が選んだベストアンサー

  • ベストアンサー
  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 PHPにはJSON形式で返してくれる便利な関数があります。 ==== PHP側の改造点 $array = array(); $array['name'] = $row['goods_name']; $array['price'] = $row['goods_price']; header ( 'Content-type: application/json; charset=utf-8' ); echo json_encode ( $array ); ==== JS側の改造点 $.post( "./SubTest1.php", {search_term : search_val}, function(json){ var data = json.name + ',' + json.price; $("#goodsname").html(data); } ); こんな感じになると思います。 PHPの配列の添字がそのままJSONのキーとなります。 なのでjson.nameとjson.priceでそれぞれの値が取得できます。

fitzgerald18
質問者

お礼

早速のご回答ありがとうございます。 やってみたのですが、結果として、 undefined,undefined と表示されました。 var data = json.name + ',' + json.price; の部分の json.nameとjson.priceがそれぞれundefinedと表示されているようです。 あと、商品名だけ表示させようとして、上記の部分を var data = json.name; に変更してやってみると、何も表示されませんでした。 私としては、undefinedと表示されると思っていたのですが....。 引き続き、調べてみますが、何かご助言などありましたら、よろしくお願いします。

fitzgerald18
質問者

補足

失礼いたしました。私のミスでした。 ご回答の通りで全く問題なく動作しました。 長時間悩んだものが解決しました。 本当にありがとうございました。

関連するQ&A