Вопрос

Я создаю очень маленькое веб-ERP-приложение с PHP / MySQL / CodeIgniter / jQuery
Счет /Инвойс создается с

current date
client data
etc

Теперь я должен добавить товары в этот новый счет, который создается, без перезагрузки / отправки страницы.Каждый продукт будет иметь свое количество, описание, цену за единицу, промежуточный итог и т.д.

Я бы хотел добавить каждую "строку" продукта, используя Ajax / jQuery.

  • Как я должен динамически создавать форму продуктов?Я имею в виду, разрешить пользователям добавлять новую строку продукта или удалять строки продукта из счета-фактуры, используя Ajax?
  • Как суммировать все динамически добавляемые "строки" в форме, чтобы получить итоговый счет?
  • И как я должен получать и обрабатывать все данные post, чтобы я мог вставить соответствующую запись invoice в таблицу invoices и вставить записи products в таблицу products_invoices?

Редактировать:здесь вы можете увидеть рабочий пример того, что я хочу сделать
http://www.bambooinvoice.org/index.php/invoices/newinvoice

РЕДАКТИРОВАТЬ 2:Этот плагин jQuery, похоже, то, что я искал
http://code.google.com/p/jquery-dynamic-form/

Это было полезно?

Решение

По сути, вы должны добавлять элементы формы в DOM динамически, поскольку пользователь продолжает добавлять строки новых данных.Я считаю, что jquery окажет большую помощь в использовании стандартных API для доступа / изменения DOM-узлов.

Для суммирования цифр вы должны обернуть числовые поля специальными крючками, такими как <span id="value_x">34</span> где x это счетчик.После каждого добавления таких новых данных повторяйте такие span элементы и суммируют значения и отображают их в поле типа $("#sumtotal").innerHTML = sum;

После динамического обновления формы, когда пользователь нажимает кнопку отправки, все данные формы отправляются на сервер как обычные данные публикации.Вы должны использовать надлежащее name и id атрибуты для полей данных, которые вы хотите обработать на сервере и обновить некоторую таблицу базы данных.

Другие советы

поскольку вы используете jQuery, я бы использовал плагин jQuery Grid для реализации раздела product rows.

http://www.trirand.com/blog/

Он легко настраивается и гибок, вы можете использовать Ajax для заполнения строк вручную или автоматически (он может считываться непосредственно из таблицы MySQL с помощью простого PHP-сервера), и у вас есть все возможности для перебора всех строк для публикации результатов на сервере, для разбиения на страницы (если вам нужно много строк, мы успешно использовали его с более чем 15 000 строк) и для выполнения дополнений и других операций.

Надеюсь, это поможет!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top