To mój pierwszy kod z jQuery, więc bądź pobłażący. Kod poniżej jest częścią tabeli, w której każdy wiersz wyświetla: przycisk przeładowywania (reload.gif) i dwa comboBoxes (CMB1 i CMB2). Oto edytowany kod tylko jednego rzędu:

<table>
<form name="myformname" form action="Handler.php" method="post">
   <tr>
      <td>
          <input type="hidden" name="MyQuestion" value="0">
          <input type="image" src="Reload.gif" border="0"/>
      </td>
      <td>
          <select name="cmb1"><option>One</option><option>Two</option></select>
      </td>
      <td>
          <select name="cmb2"><option>A1</option><option>A2</option></select>
      </td>
   </tr>
</form>
</table>

Zmienne Myquestion, CMB1 i CMB2 (wybrany przez użytkownika) są przekazywane do Handler.php (jak wszystkie są w tej samej formie), które przeszukają dane w bazach danych i przeładować stronę z nowymi danymi. To działa ok.

Ale teraz chcę zmienić logikę, bo nie chcę przeładować całej strony, ale tylko wiersz, który został kliknięty. Próbowałem z jQuery coś takiego (Onclick dodał do przeładunku.gif!):

<table>
   <tr>
      <td>
          <input type="hidden" name="MyQuestion" value="0">
          <input type="image" onclick="recp('0')" src="Reload.gif" border="0" name="MyQuestion" value="0"/>
      </td>
      <td>
          <select name="cmb1"><option>One</option><option>Two</option></select>
      </td>
      <td>
          <select name="cmb2"><option>A1</option><option>A2</option></select>
      </td>
   </tr>
</table>

A w nagłówku dodałem ten kod (wziąłem go z Tutaj)

function recp(id) {
  $('#myStyle').load('data.php?id=' + id);
}

Mam kilka wyników dla identyfikatora, ale oto moje pytanie: w

load('data.php?id=' + id)

Czy mogę wysłać wiele zmiennych (ID, CMB1 i CMB2)?

1
CMArg 16 sierpień 2014, 01:23

2 odpowiedzi

Najlepsza odpowiedź

Aby wysłać wiele zmiennych, na przykład można użyć,

load('data.php?id=' + id + '&var1=' + var1 + '&var2=' + var2)

Więcej przykładów i innych sposobów, aby to zrobić, spójrz na instrukcję jQuery dla Funkcja obciążenia .

4
Lenny 15 sierpień 2014, 21:29

Dlaczego nie używać .Serialize ()?

$("#myStyle").load('data.php?' + $("form[name=myformname]").serialize());
0
glambert 15 sierpień 2014, 22:20