contentType
ist die Art der Daten, die Sie senden. Dies application/json; charset=utf-8
ist eine übliche Art, wie sie ist application/x-www-form-urlencoded; charset=UTF-8
. Dies ist die Standardeinstellung.
dataType
ist das, was von dem Server Sie erwarten zurück: json
, html
, text
wird etc. jQuery diese verwenden , um herauszufinden , wie sich die Erfolgsfunktion des Parameters zu füllen.
Wenn Sie etwas veröffentlichen wie:
{"name":"John Doe"}
und zurück erwarten:
{"success":true}
Dann sollten Sie haben:
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
},
});
Wenn Sie Folgendes erwarten:
<div>SUCCESS!!!</div>
Dann sollten Sie tun:
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
},
});
Noch eine - wenn du posten willst:
name=John&age=34
Dann nicht stringify
die Daten und tun:
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
},
});