Как создать объект JSON на стороне клиента и отправить его на сервер? - PullRequest
1 голос
/ 26 мая 2010

У меня есть приложение на основе ExtJS. У меня есть составной объект на стороне сервера, и у меня есть окно ExtJS с несколькими вкладками для редактирования различных частей этого одного объекта. Например:

У меня есть составной объект "Автомобиль"

public class Car
{
   public string Name;
   public string Color;

   public List<Wheel> Wheels;
   public List<Door> Doors;
}

В моем окне ExtJS есть вкладки («Общая информация», «Колеса», «Двери») для редактирования различных частей этого объекта.

Так что я хочу:

Когда я хочу создать новую машину, я хочу сгенерировать конфигурацию JSON для своего класса "Автомобиль", например {Name:null; Color:null; Wheels:[]; Doors:[]}, затем отправить ее клиенту, заполнить ее на клиенте (без обратных вызовов на сервер) и после того, как пользователь закончит создание его объект «Автомобиль» (он добавил колеса, двери, имя и цвет) и нажмите «Сохранить». Я хочу отправить этот заполненный (сгенерированный) объект JSON на сервер и сохранить его в БД.

Возможно ли это?

Спасибо

Ответы [ 2 ]

2 голосов
/ 26 мая 2010

Вот как вы можете отправить объект JSON из JavaScript на сервер, используя ExtJS:

var obj = {
   property1: "Value1",
   property2: [],
   property3: true
};
Ext.Ajax.request({
   url: 'some.url',
   method: "POST",
   callback: function(options,success,xhr) { console.dir(arguments); },
   jsonData: Ext.encode(obj)
});

Теперь способ обработки этого запроса зависит от того, что вы используете на стороне сервера, но буфер POST для этого запроса будет содержать именно это:

0 голосов
/ 12 июня 2010

вы также можете использовать Ext.Ajax.request с параметрами: {param: Ext.decode (yourParamObject)}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...