- ajaxでサーバーから複数のデータを配列で取得しようとしております。
- 特定のレンタルサーバーでは受け取った配列をJSON.parse()しなければならないを見つけたため
appendする前にJSON.parse()しております。(実際に私が使用しているのも記事中のサーバーです。)
参考記事
3)以下の通りのエラーが出力されてしまい、'<p>'.$hoge.'</p>'がappendされません。
Uncaught SyntaxError: Unexpected token < in JSON at position 102
エラー理由と解決方法がわからなかったため、ご質問させていただきました。
・配列ではなく直接'<p>'.$hoge.'</p>'をechoすれば受け取りappendされることは
確認しております。
・複数の値を取得したかったため、配列にしてjson_encodeで変換しております。
・おそらく$hogeだけを値を渡して、わざわざ<p>タグごと値を渡す必要はないとご指摘を
受けると思われますが、そこはそうせざるえなかったということで所与の者としてお取り扱いください。
Google Chrome
バージョン: 68.0.3440.106(Official Build) (64 ビット)
php
1/*serve.php*/ 2/*便宜上シンプルにしております*/ 3<?php 4$ar=[]; 5$hoge=1; 6$piyo='<p>'.$hoge.'</p>'; 7$ar=[ 8"fuga"=>$piyo; 9/*他の配列は省略*/ 10] 11 12header('Content-Type: application/json; charset=utf-8'); 13echo json_encoode($ar); 14?
javascript
1$.ajax({ 2type:'POST', 3url:'serve.php', 4timeout:1000, 5data:{ 6/*省略*/ 7}, 8success: function(date){ 9let arr = JSON.parse(date); 10$('').append(arr.styling); 11}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/09 23:03