Witam, może na samym początku pokażę mój kod, a następnie napiszę w czym problem.
  1. <?php
  2. foreach($perms['data'] as $perm) {
  3. echo '<form name="updatePerm" id="updatePerm" action="update.php">';
  4. echo '<input type="hidden" name="perm_id" value="'.$perm['permsid'].'">';
  5. echo '<tr>';
  6. echo '<td>'.$perm['permsid'].'</td>';
  7. if($perm['permvalue'] <= 1)
  8. {
  9. if($perm['permvalue'] == 1)
  10. {
  11. echo '<td><input type="checkbox" name="perm_value" value="'.$perm['permvalue'].'" checked="checked" /></td>';
  12. }
  13. else
  14. {
  15. echo '<td><input type="checkbox" name="perm_value" value="'.$perm['permvalue'].'" /></td>';
  16. }
  17. }
  18. else
  19. {
  20. echo '<td><input type="text" name="perm_value" value="'.$perm['permvalue'].'"></td>';
  21. }
  22.  
  23. if($perm['permskip'])
  24. {
  25. echo '<td><input type="checkbox" name="perm_skip" value="'.$perm['permskip'].'" checked="checked" /></td>';
  26. }
  27. else
  28. {
  29. echo '<td><input type="checkbox" name="perm_skip" value="'.$perm['permvalue'].'" /></td>';
  30. }
  31.  
  32. if($perm['permnegated'])
  33. {
  34. echo '<td><input type="checkbox" name="perm_gated" value="'.$perm['permnegated'].'" checked="checked" /></td>';
  35. }
  36. else
  37. {
  38. echo '<td><input type="checkbox" name="perm_gated" value="'.$perm['permvalue'].'" /></td>';
  39. }
  40. echo '</form>';
  41.  
  42. echo '<td><button class="btn btn-info" id="update">Zapisz</button> <div id="ajax-form-msg1"></div></td>';
  43. echo '</tr>';
  44. }
  45. ?>
  46.  
  47. <script>
  48. $("#update").click(function()
  49. {
  50. $("#ajax-form-msg1").html("<img src='loading.gif'/>");
  51.  
  52. var formData = $("#updatePerm").serializeArray();
  53.  
  54. var URL = $("#updatePerm").attr('action');
  55. $.post(URL,
  56. formData,
  57. function(data, textStatus, jqXHR)
  58. {
  59. $("#ajax-form-msg1").html('<pre><code class="prettyprint">'+data+'</code></pre>');
  60. }).fail(function(jqXHR, textStatus, errorThrown)
  61. {
  62. $("#ajax-form-msg1").html('<pre><code class="prettyprint">AJAX Request Failed<br/> textStatus='+textStatus+', errorThrown='+errorThrown+'</code></pre>');
  63. });
  64. });
  65. </script>


Problem polega na tym, że wykonanie form z użyciem Js działa dla pierwszego wyniku z pętli. Wiecie dlaczego tak jest?