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

Этот код работает в Chrome, но в IE 11 retunr ошибка «SCRIPT1003: ожидаемый":»в строке 5. я очень признателен за любую помощь , Примечание: «место» и «имена» представляют собой ранее созданные массивы. «ТЕЗИСЫ ДОКЛАД» также является переменной previosuly определяетсяJavascript Ajax SCRIPT1003: Ожидаемая «:» в IE 11

+2

данные: {место, имена, ТЕЗИСЫ ДОКЛАД} не является действительным объектом JS. Предполагается, что это массив? то есть. данные: [место, имена, репортер]? – Rooster

+0

Я был бы очень удивлен, если бы это сработало в хроме. Это синтаксически неверно. – Pointy

+0

Вам еще нужно определить имя свойства, которое будет удерживать это значение внутри передаваемого объекта. 'data: {place: place, names: names, repor: repor}' – shamsup

ответ

10

Обычно объекты в JavaScript инициализируется в качестве ключевых пар значений, так что данные, вероятно, следует инициализировать как

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

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

В ECMAScript 2015 вам кажется может опустить ключевую часть в определенных ситуациях, поэтому она работает на хроме.

+0

трудно сказать, что это действительно или недействительно на основе информации OP предоставлена. Впрочем, догадайтесь. – Rooster

4

У меня был SCRIPT1003: ожидаемая ошибка «:» также в IE 11 (и мой код отлично работал в Chrome & FireFox). Если кто-то использует Knockoutjs и сталкивается с этим, следить за синтаксис при указании функций в модели представления:

var viewModel = { 
    property1: "", 
    functionWorksInAllBrowsers: function (arg1, arg2) { 
     // ... 
    }, 
    functionThrowsErrorInInternetExplorer11(arg1, arg2) { 
     //... 
    } 
}; 
Смежные вопросы