2012-05-10 4 views
0

Как и в случае с jQuery how to load some json records into a form fields?, у меня довольно сложная форма, где поля взаимодействуют друг с другом, требуя перерасчетов (некоторая сложная математика), а также отключая поля при определенных условиях. Класс на сервере, который может выводить JSON или аналогичный.манипуляция формы ajax с jquery

Запрос на рассылку запускается jQuery на любом полевом обмене и должен отвечать требованиям класса и действовать соответствующим образом. О действующих на Ajax-ответ:

  • Может ответ отформатирован поэтому поля обновляются/утрачено без итерации JSON-результата?

  • Просьба привести пример современного json-response для такой функциональности.

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

EDIT:

В сущности:

$.ajax({ 
    url: "theCalcClass.php", 
    context: document.body 
    }).done(function() { 
    //use the json data to update fields w/o foreach... 
    }); 
+0

Почему именно вы не хотите повторять ответ JSON? – bfavaretto

+0

Это чешется. Один уровень слишком много. – Teson

ответ

1

Я не уверен, что понимаю ваш вопрос. Если вы ищете встроенный однострочный лоток, такой как form.repopulateWith(json), его не существует. Ваши варианты:

  1. Зацикливание JSON и заселив каждое поле или

  2. Установка поля значений по одному без зацикливания.

Любое другое решение (например, плагин) должно будет использовать один из этих подходов, другого пути нет.

+0

Я верю, что вы понимаете мой вопрос. Я более или менее хочу привязать JSON (объект) к DOM. – Teson

+0

Да, но нет никакого «ванильного» способа сделать это. Возможно, Backbone.js (предложенный @Amadan) может это сделать, но это целая структура. JS и веб-браузеры не предоставляют это из коробки. – bfavaretto

+0

Хорошо, спасибо. Однако эта магистраль кажется слишком умной для этой цели. – Teson

1

Не 100% уверен, что вы имеете в виду, но я считаю, что рамки MVC как Backbone.js может помочь вам.

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