Je l'appel ajax suivant qui fonctionne parfaitement dans Firefox et Chrome, mais pas IE:
function getAJAXdates(startDate, numberOfNights, opts) {
var month = startDate.getMonth() + 1;
var day = startDate.getDate();
var year = startDate.getFullYear();
var d = new Date();
var randNum = Math.floor(Math.random()*100000000);
$.ajax({
type : "GET",
dataType : "json",
url : "/availability/ajax/bookings?rand="+randNum,
cache : false,
data : 'month='+month+'&day='+day+'&year='+year+'&nights='+numberOfNights,
contentType : 'application/json; charset=utf8',
success : function(data) {
console.log('@data: '+data);
insertCellData(data, opts, startDate);
},
error:function(xhr, status, errorThrown) {
console.log('@Error: '+errorThrown);
console.log('@Status: '+status);
console.log('@Status Text: '+xhr.statusText);
}
});
}
Je sais pertinemment que tous les les variables passent le bon contenu et $ .ajax passe en effet tous les paramètres/valeurs.
C'est ce que je reçois en cas d'erreur:
LOG: @Error: non défini LOG: @Status: parsererror LOG: @Status Texte: OK
Je suis au courant du problème de cache IE et mis en œuvre un paramètre aléatoire pour l'effacer.
est le JSON je reviens ici (je suis en mesure de le voir avec Charles)
{
"availability":[
{
"inventory_id":"5",
"booking_id":"21",
"start_date":"05-01-2010",
"number_nights":4,
"text":"deFrancisco, Martin - $500.00 ACTIVE",
"type":"BOOKING"
}
]
}
Enfin ce sont les têtes qui sont envoyés à partir du back-end de retour:
header('Content-Type: application/json; charset=utf8');
header("Cache-Control: no-cache");
header("Expires: 0");
header('Access-Control-Max-Age: 3628800');
header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE');
Tous des idées?
J'ai ajouté contentType pour voir si cela résout le problème mais cela ne fonctionne pas même avec. merci – Sam3k