Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    133

    Inviare una POST request tramite tag <A>

    Salve a tutti. Vorrei realizzare questa semplice funzione: ho un link, e quando clicco su esso vorrei aprire la pagina in questione (in questo caso passdataj2.php) inviandole una richiesta di tipo POST. La pagina non dovrebbe aprirsi in una nuova finestra.
    Stavo cercando di utilizzare la funzione $.post() di jQuery, ma non funziona, o meglio, non apre la pagina in questione:

    codice:
    <html>
      <head>
    	<script type="text/javascript" src="jquery.js"></script>
    	
        <script type="text/javascript">
        
    	$(document).ready(function(){
    		
    		$("a").click(function(event) {
    			event.preventDefault();
    			$.post("passdataj2.php", {"name":"manu"});
    		})
    	})
    	
        </script>
    
      </head>
      <body>
    	
    	Link che invia la richiesta POST a passdataj2.php
    	
      </body>
    </html>
    La console non mi da nessun errore, e sembra che la richiesta venga realmente inviata. L'unica cosa che non succede è che la pagina non viene caricata.

  2. #2
    Il tuo codice è troppo complicato ed io personalmente sono per quello scritto a mano come quello qui sotto. Oltre alla sua semplicità hai il vantaggio che se qualcosa non funziona c'è una comunità che ti sa aiutare, mentre il codice copiato nessuno te lo correggerà mai!

    <script>
    function invia()
    {
    document.MyForm.submit();
    }
    </script>

    <form name="MyForm" action="passdataj2.php" method="post">
    <input name="MioCampo">
    </form>

    Link che invia la richiesta POST a passdataj2.php

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    133
    scusa l'ignoranza...che vuol dire il codice "copiato"...?
    E' una funzione di due righe e un link html...dov'è la complessità?
    Non ho proprio capito...

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649

    Re: Inviare una POST request tramite tag <A>

    Originariamente inviato da McKracken
    non funziona, o meglio, non apre la pagina in questione

    L'unica cosa che non succede è che la pagina non viene caricata.
    ma aperta dove? caricata dove?
    i dati passano perfettamente e il response lo ottieni,
    se non specifichi cosa farsene non puoi aspettarti miracoli

    usa $.load se vuoi automaticamente mostrare in un elemento quanto ottenuto in risposta alla chiamata ajax
    altrimenti scrivi quello che deve accadere una volta ottenuto il response in una function in callback
    http://docs.jquery.com/Ajax/jQuery.p...tacallbacktype

    ciao

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    133
    Ok, forse li sono stato poco chiaro .
    Allora, in parole povere, vorrei che cliccando su un link venga aperta la pagina normalmente, come se si cliccare su un qualsiasi link normalissimo, ma in più vorrei inviargli dei dati mediante POST request...

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    allora ajax non ti serve, giusto?
    se e' cosi' fai come ti e' stato consigliato sopra, invia un form

    se reputi non sia il caso di tenerti nel markup un form costruiscilo e popolalo con jquery prima di inviarlo

    ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.