web-dev-qa-db-fra.com

javascript Ajax SCRIPT1003: «:» attendu dans IE 11

 var url="tabla.php";
 $.ajax({
    type: "POST",
    url:url,
    data:{place,names,repor},
    success: function(datos){       
    $('#tabla').html(datos);
  }

Ce code fonctionne dans Chrome mais dans IE 11 renvoie l'erreur SCRIPT1003: Expected ':' en ligne 5. J'apprécierais vraiment toute aide.

Remarque:place et names sont des tableaux qui ont été définis précédemment, et repor est également une variable précédemment définie.

15
Mario Zanetta

Habituellement, les objets en javascript sont initialisés en tant que paires de valeurs clés, donc les données devraient probablement être initialisées comme

data:{ place : place, names : names, report : report }

Voir https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer

Dans ECMAScript 2015, il semble que vous pouvez omettre la partie clé dans certaines situations, c'est pourquoi cela fonctionne sur Chrome.

19
ryan

J'ai également eu l'erreur SCRIPT1003: Expected ':' dans IE 11 (et mon code a bien fonctionné dans Chrome & FireFox). Si quelqu'un utilise Knockoutjs et rencontre cela, faites attention à la syntaxe lorsque vous énoncez des fonctions dans votre modèle de vue:

var viewModel = {
    property1: "",
    functionWorksInAllBrowsers: function (arg1, arg2) {
        // ...
    },
    functionThrowsErrorInInternetExplorer11(arg1, arg2) { 
        //...
    }
};
17
pursang