2015-02-13 2 views
-2

Использование JSON.stringify() разбивает страницы без ошибок в консолиИспользование JSON.stringify() разбивает страницы без ошибок в консоли

EDIT: Я читал о JQuery плагин JQuery-JSON, я попробовал, что с тем же результат.

var bookmarkParams = {"id":"123456"}; 

$.ajax({ 
    url: 'http://service', 
    cache: false, 
    type: "POST", 
    dataType: "json", 
    headers: { 
     // some headers 
    }, 
    contentType: 'application/json; charset=UTF-8', 
    data: JSON.stringify(bookmarkParams), 
    success: successCallback, 
    error: errorCallback 
}); 
// successCallback & errorCallback are defined functions 

любые идеи, почему это может быть?

Если я не использую JSON.stringify(), страница не прерывается, но мой запрос AJAX не будет работать правильно при передаче моих данных на сервер.

+4

Возможно, должно быть 'JSON.stringify (bookmarkParams)' вместо 'JSON.stringify (params)'? –

+4

Должны ли 'params' быть' bookmarkParams'? Что означает «ломает страницу»? Укажите конкретную ошибку. –

+0

В каком браузере это работает? В некоторых браузерах интегрирован JSON, или же режим совместимости (grr, IE 10/11) делает его недоступным. – ps2goat

ответ

-1

Что такое параметры? Разве вы не имеете в виду закладки params?

попробовать это ...

вар bookmarkParams = '{ "ID": "123456"}';

затем изменить Params в bookmarkParams

+1

Был ли вопрос отредактирован? 'bookmarkParams' - это объект, а не строка. –

+0

Извините, что вы правы своим объектом json. –

-1

Вы не определены 'params'. Вероятно, вы имеете в виду 'bookmarkParams'? Вы также не определили 'url', 'successCallback', или 'errorCallback'. Вы должны определить их и/или обновить пример кода.

+1

В коде говорится: 'contentType: 'application/json; charset = UTF-8 ', ', поэтому он определенно не должен быть закодирован как« application/x-www-form-urlencoded »(который используется в строках запроса). – Quentin

+0

А, пропустил это – stefanb

Смежные вопросы