以下のようにajax通信でjsonをpostするソースを作成しました。
html
1 2<button type="button"></button> 3
jQuery
1 2$("button").click(function() { 3 4var data = { 5 name:'山田', 6 age: '24才' 7 }; 8 9$.ajax({ 10 type:"post", 11 url:"POST送信先のURL", 12 data:JSON.stringify(data), 13 contentType: 'application/json', 14 dataType: "json", 15 success: function(json_data) { 16 location.reload(); 17 }, 18 error: function(XMLHttpRequest, textStatus, errorThrown) { 19 alert("エラー"); 20 21console.log("XMLHttpRequest : " + XMLHttpRequest.status); 22 console.log("textStatus : " + textStatus); 23 console.log("errorThrown : " + errorThrown.message); 24 25 }, 26 complete: function() { 27 button.attr("disabled", false); 28 } 29 }); 30 31});
postで送信しようとしたところ以下のようなエラーが発生し、送信できず
Unexpected token < in JSON at position 0
原因を見たところどうやら、dataになぜかjson文字列ではなくpost元のHTMLが出力されてしまいます。
HTMLが出力される原因がわからず、ご教示いただけると幸いです。
回答1件
あなたの回答
tips
プレビュー