2012-03-13 4 views
1

Я хочу создать этот файл параметров, чтобы я мог отправить его на веб-службу.Как создать JSON в ExtJS для вызова AJAX?

var parms = { 
    "quiz_id":"120", 
    "owner_id":"1", 
    "solver_id":"1", 
    "answers": 
    [ 
     { 
    "answer_text" : "YES", 
    "question_id" : "1" 
     }, 
     { 
    "answer_text" : "NO", 
    "question_id" : "2" 
     }, 
     { 
    "answer_text" : "YES", 
    "question_id" : "3" 
     }, 
     { 
    "answer_text" : "YES", 
    "question_id" : "4" 
     }, 
     { 
    "answer_text" : "YES", 
    "question_id" : "5" 
     } 
    ] 
}; 

Я застрял с содержимым внутри ответов. Я не знаю, как создать его динамически.

ответ

3

для сериализации Java-объектов в строки JSON или вы можете использовать

JSON.stringify(Object); 

, который доступен в большинстве последней фрезы, иначе вы можете использовать ExtJS ВСТРОЕННОЙ методу

Ext.encode(Object); 

и для десериализации JSON string вы можете использовать JSON.parse(JSONString) или Ext.decode(JSONString)

0

Создайте объект с массивом и некоторыми объектами внутри, а затем посмотрите на метод Ext.data.proxy.Server.encodeFilters().

+0

где я могу привести пример для изучения этого метода – rash111

+0

скачать ExtJs, если вы еще этого не сделали. перейдите к src/data/proxy. Проверьте файл Server.js – sha

+0

Я использую extjs 3.4 – rash111

1

Простой способ сделать это - создать ваши данные как объект javascript, а затем использовать «стенографист» Json, чтобы превратить его в строку json, которая затем может быть передана на ваш сервер.

Эта же проблема ответили ранее на Serializing an object to JSON

Если вы используете JQuery (и я настоятельно рекомендую его как очень полезный инструмент для всех серьезных яваскрипта программистов), есть хороший плагин, который я использую для передачи JSON назад и дальше в Ajax. См http://code.google.com/p/jquery-json/

+0

Я использую extjs 3.4 для создания json и создания ajax-запроса для webservice – rash111

+0

Я только что видел ваш комментарий и не знаю, почему тот факт, что вы использование extjs исключает использование скриптера. Если вы не хотите беспокоиться о накладных расходах JQuery, то строка из json.org в порядке. –