Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jquery] Wybór z konkretnego formularza
Forum PHP.pl > Forum > XML, AJAX
bliitz
Witam

przykładowa funkcja wygląda tak:

Kod
     function checkData( id ){
         $.ajax({
             type: "POST",
             url: "ajax/term_spotkan.ajax.php",
             data: { 'id': id, 'gospodarze': $('input[name="gospodarze"]').val(), 'goscie': $('input[name="goscie"]').val() },
             success: function(msg){
                 alert( "wiadomosc " + msg );
             }
         });
     }


oraz formularze:
  1. <form method="post" onsubmit="checkData( '<?php echo $zm[ 'id_spotkania' ];?>' );return false;">
  2. <input class="dane_zw" name="gospodarze" style="width: 120px;" type="text" value="<?php echo $zm['gospodarze'];?>" />
  3. <input class="dane_zw" name="goscie" style="width: 100px;" type="text" value="<?php echo $zm['goscie'];?>" />
  4. <input type="submit" name="aktualizuj" value="Aktualizuj" class="submit" />
  5. </form>
  6. <form method="post" onsubmit="checkData( '<?php echo $zm[ 'id_spotkania' ];?>' );return false;">
  7. <input class="dane_zw" name="gospodarze" style="width: 120px;" type="text" value="<?php echo $zm['gospodarze'];?>" />
  8. <input class="dane_zw" name="goscie" style="width: 100px;" type="text" value="<?php echo $zm['goscie'];?>" />
  9. <input type="submit" name="aktualizuj" value="Aktualizuj" class="submit" />
  10. </form>
  11. <form method="post" onsubmit="checkData( '<?php echo $zm[ 'id_spotkania' ];?>' );return false;">
  12. <input class="dane_zw" name="gospodarze" style="width: 120px;" type="text" value="<?php echo $zm['gospodarze'];?>" />
  13. <input class="dane_zw" name="goscie" style="width: 100px;" type="text" value="<?php echo $zm['goscie'];?>" />
  14. <input type="submit" name="aktualizuj" value="Aktualizuj" class="submit" />
  15. </form>


w jaki sposób można odnieść się do konkretnego formularza, teraz bez różnicy, który submit zostanie naciśnięty przekazywane są dane z pierwszego formularza
pewnie dodanie jakiegoś id do każdego formularza rozwiąże problem tylko jak później odnieść się do niego w kodzie javascript??
Rafal Filipek
to
Kod
function checkData( id ){

na to
Kod
function(form, id){

to
Kod
checkData( '<?php echo $zm[ 'id_spotkania' ];?>' )

na to
Kod
checkData(this, '<?php echo $zm[ 'id_spotkania' ];?>' )

to
Kod
$('input[name="gospodarze"]').val()

na to
Kod
$(this).children('input[name="gospodarze"]').val()

powinno smigac. A gneralnie to polecam pocztac o Eventach w jQuery bo takie onsubmit w html'u to juz nie jest trendi.
bliitz
niestety nie tzn. gdy zmienie
Kod
       function checkData( id ){

na
Kod
       function(form, id){

to konsola błędów wyświetla:
checkData is not defined oraz syntax error przy function(form, id)
oraz zmienna pobrana jako
Kod
       $(this).children('input[name="gospodarze"]').val()

jest undefined

próbowałem też z eventem tzn.
Kod
       <script type="text/javascript">
$(document).ready(function(){
    $("form").submit( function(){
        $.ajax({
        type: "POST",
        url: "ajax/term_spotkan.ajax.php",
        data: { 'gospodarze': $(this).children('input[name="gospodarze"]').val(), 'goscie': $('input[name="goscie"]').val() },
        success: function(msg){
        alert( "wiadomosc " + msg );
    }
    });
});
});
        </script>
        
        <form method="post">
        <input class="dane_zw" name="gospodarze" style="width: 120px;" type="text" value="<?php echo $zm['gospodarze'];?>" />
        <input class="dane_zw" name="goscie" style="width: 100px;" type="text" value="<?php echo $zm['goscie'];?>" />
  <input type="submit" name="aktualizuj" value="Aktualizuj" class="submit" />
        </form>
        </span><span class="postcolor"><form method="post">
          <input class="dane_zw" name="gospodarze" style="width: 120px;"  type="text" value="<?php echo $zm['gospodarze'];?>" />
          <input class="dane_zw" name="goscie" style="width: 100px;" type="text" value="<?php echo $zm['goscie'];?>" />
  <input type="submit" name="aktualizuj" value="Aktualizuj" class="submit" />
          </form>


ok problem rozwiązany, powyższy kod działa
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.