Domanda

Sto realizzando un'applicazione ERP Web molto piccola con PHP / mySQL / CodeIgniter / jQuery
La fattura / fattura è costruita con

current date
client data
etc

Ora, devo aggiungere prodotti a quella nuova fattura che viene creata, senza ricaricare / inviare la pagina. Ogni prodotto avrà la sua quantità, descrizione, prezzo unitario, totale parziale, ecc.

Vorrei aggiungere ogni prodotto " riga " usando Ajax / jQuery.

  • Come devo creare il modulo prodotti in modo dinamico? Voglio dire, consentire agli utenti di aggiungere una nuova riga di prodotto o rimuovere righe di prodotto dalla fattura, utilizzando Ajax?
  • Come sommare tutte le " aggiunte dinamicamente; righe " nel modulo, per ottenere il totale della fattura?
  • E come devo ricevere e trattare tutti i dati postali in modo da poter inserire il record di fattura corretto nella tabella delle fatture e inserire i record dei prodotti nella tabella products_invoices?

MODIFICA: qui puoi vedere un esempio funzionante di ciò che voglio fare
http://www.bambooinvoice.org/index.php/invoices/newinvoice

EDIT2: questo plugin jQuery sembra essere quello che stavo cercando
http://code.google.com/p/jquery-dynamic-form/

È stato utile?

Soluzione

Fondamentalmente devi aggiungere dinamicamente gli elementi del modulo al DOM mentre l'utente continua ad aggiungere righe di nuovi dati. Credo che jquery sarà di grande aiuto nell'uso delle API standard per l'accesso / modifica dei nodi DOM.

Per riassumere le cifre, devi avvolgere i campi numerici con ganci speciali come <span id="value_x">34</span> dove x è un contatore. Dopo ogni aggiunta di tali nuovi dati, scorrere attraverso tali span elementi e sommare i valori e visualizzarli in un campo come $("#sumtotal").innerHTML = sum;

Dopo gli aggiornamenti dinamici al modulo, quando l'utente fa clic sul pulsante di invio, tutti i dati del modulo andranno al server come normali dati di post. È necessario utilizzare gli attributi name e id corretti per i campi di dati che si desidera elaborare nel server e aggiornare alcune tabelle del database.

Altri suggerimenti

poiché stai usando jQuery, utilizzerei il plug-in Grid jQuery per implementare la sezione delle righe del prodotto.

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

È altamente configurabile e flessibile, puoi usare Ajax per popolare manualmente o automaticamente le righe (può leggere direttamente da una tabella MySQL con un semplice backend PHP) e hai tutte le funzionalità per iterare tutte le righe per pubblicare i risultati al server, per eseguire l'impaginazione (se hai bisogno di molte righe, l'abbiamo usata con successo con più di 15.000 righe) e per fare aggiunte & amp; altre operazioni.

Spero che sia d'aiuto!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top