contentType
คือประเภทของข้อมูลที่คุณส่งดังนั้นจึงapplication/json; charset=utf-8
เป็นข้อมูลทั่วไปตามapplication/x-www-form-urlencoded; charset=UTF-8
ที่เป็นค่าเริ่มต้น
dataType
คือสิ่งที่คุณคาดหวังกลับมาจากเซิร์ฟเวอร์: json
, html
, text
ฯลฯ jQuery จะใช้ข้อมูลนี้จะคิดออกวิธีการเติมพารามิเตอร์ฟังก์ชั่นที่ประสบความสำเร็จของ
หากคุณกำลังโพสต์สิ่งที่ชอบ:
{"name":"John Doe"}
และคาดหวังกลับมา:
{"success":true}
จากนั้นคุณควรจะมี:
var data = {"name":"John Doe"}
$.ajax({
dataType : "json",
contentType: "application/json; charset=utf-8",
data : JSON.stringify(data),
success : function(result) {
alert(result.success); // result is an object which is created from the returned JSON
},
});
หากคุณคาดหวังสิ่งต่อไปนี้:
<div>SUCCESS!!!</div>
จากนั้นคุณควรทำ:
var data = {"name":"John Doe"}
$.ajax({
dataType : "html",
contentType: "application/json; charset=utf-8",
data : JSON.stringify(data),
success : function(result) {
jQuery("#someContainer").html(result); // result is the HTML text
},
});
อีกหนึ่ง - ถ้าคุณต้องการโพสต์:
name=John&age=34
จากนั้นอย่าstringify
ใช้ข้อมูลและทำ:
var data = {"name":"John", "age": 34}
$.ajax({
dataType : "html",
contentType: "application/x-www-form-urlencoded; charset=UTF-8", // this is the default value, so it's optional
data : data,
success : function(result) {
jQuery("#someContainer").html(result); // result is the HTML text
},
});