Pentru a mă preda Javascript, am încercat să fac o pagină web care oferă utilizatorilor o listă de elemente (de exemplu, alimente), le cere pentru a sorta aceste alimente de la preferat cel preferat la, și să transmită datele când au terminat. Utilizarea sortables jQuery pare ca o modalitate buna de a face acest lucru. Cu toate acestea, eu nu sunt sigur cum ar trebui să se întâmple transmiterea de date.
Iată ce mă gândesc. Fiecare dintre aceste produse alimentare ar fi într-un div ca aceasta:
<div id=sortable>
<div id=1 class=foods>Pizza</div>
<div id=2 class=foods>Sushi</div>
<div id=3 class=foods>Taco</div>
</div>
Atunci când utilizatorul face clic pe un buton „submit“, vreau ordinea acestor elemente care urmează să fie determinată, iar pentru această ordonare să fie trimis înapoi la server (apropo, eu sunt, folosind Django pe partea de server). Se pare că pot determina ordinea elementelor cu o funcție de genul:
function getOrder()
{
var foods = $(.foods);
var ids = [];
for(var x=0; x<foods.length; x++)
{
ids.push(foods[x].id);
}
return ids;
}
Cu toate acestea, eu sunt blocat pe câteva lucruri:
- În cazul în care în codul meu aș numi această funcție? Mă gândesc că ar fi o acțiune onclick atunci când utilizatorul apasă pe butonul de trimitere, dar nu sunt sigur în cazul în care datele revine funcției ar obține trecut.
- În ce format ar fi cel mai potrivit pentru a trimite această ordonare la server (de exemplu, JSON)?
(Știu că acest lucru este o întrebare foarte de bază, dar nu am mai făcut o pagină web cu JavaScript înainte, astfel încât acest domeniu de programare este cu totul nou pentru mine.)