Pagina 1 din 1

Transmitere array in obiect la Ajax

Scris: Mie Feb 10, 2016
de andras
Salut,
Vreau sa filtrez datele dintr-un tabel html si pentru fiecare coloana am pus un input type="text" la inceputul tabelului. In JS am urmatoarele intructiuni (simplificat):

Cod: Selectaţi tot

<script>
function filtreaza(elm, clasa, tabela) {   
var filtre = [];
var id='';
for (i = 0; i <= elm; i++) {    // elm este numarul de cimpuri din tabelul html
id='ttt'.concat(i);
filtre[i] = document.getElementById(id).value;
}
alert(filtre); // afiseaza filtru1, filtru2, filtru3, filtru4 (valorile corespunzatoare din input-urile text de la inceputul tabelului html)
}
</script>
Array-ul are lungime variabila, in functie de numarul coloanelor din tabelul html.
Cum transmit acest array de aici catre functia ajaxSend() ca obiect JS si cum il convertesc din nou in fisierul destinatie? In fisierul destinatie cu aceste valori voi filtra inregistrarile. Multumesc.

Transmitere array in obiect la Ajax

Scris: Mie Feb 10, 2016
de MarPlo
Salut
Poti face asa, se transmite array-ul ca sir JSON la o proprietate din obiect pe care-l trimiti la ajaxSend():

Cod: Selectaţi tot

function filtreaza(elm, clasa, tabela) {   
  var filtre = [];
  var id='';
  for(i = 0; i <= elm; i++) {  // elm - numarul de cimpuri din tabelul html
    id='ttt'.concat(i);
    filtre[i] = document.getElementById(id).value;
  }
  var data_send = {tb: JSON.stringify(filtre)};  //object to be send to ajaxSend()
//  console.log(data_send); //to see data of data_send in JS console
}
Iar in php, unde e trimis, se preia asa:

Cod: Selectaţi tot

if(isset($_POST['tb'])){
 $tb = json_decode(trim($_POST['tb']), true);
  var_export($tb);  //for test
}