Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di wino_7
    Registrato dal
    Dec 2006
    Messaggi
    537

    Jquery + Ajax eliminare refresh

    Salve a tutti,
    devo richiamare uno script lato server al click su un link, però vorrei che il browser resti nella pagina dove si trova e dunque non seguire il link.
    Posto il codice:
    codice:
    ........[*]Apri 
    .......
    <script type="text/javascript"> 
    document.getElementById("apri").onclick = function(){
     
    	$.ajax({
    	     type: "GET",
    	     url: "apri.php",
    	     success: function(dati){
    	         return false;
    	     },
    	     error: function(richiesta,stato,errori){
    	    	 return false;
    	     }
    	});
    		
    return false;
    };
    </script> 
    </body> 
    </html>
    sapevo che per impedire al browser di seguire la chiamata nella nuova pagina, basta inserire il return false; ma non funziona.

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    href="#"

    l'url è già specificato nella chiamata ajax, i return false non ti servono, inoltre per applicare un evento ad un elemento della pagina puoi utilizzare i selettori di jquery.

  3. #3
    Utente di HTML.it L'avatar di wino_7
    Registrato dal
    Dec 2006
    Messaggi
    537
    Se setto href="#" direttamente da html e javascript è disabilitato l'utente non potrà mai aprire.
    Dunque devo lasciare href="apri.php" ed impedire al browser di seguire la chiamata ajax sulla nuova pagina

  4. #4

  5. #5
    Utente di HTML.it L'avatar di wino_7
    Registrato dal
    Dec 2006
    Messaggi
    537
    Grazie dell'aiuto ma nemmeno ora funziona.
    Codice PHP:
    $("#apri").click(function(event) {
     
    event.preventDefault();
     $.
    ajax({ type"GET",
                 
    url"apri.php", });
    }); 
    Non capisco perchè!!!
    Mi sembra assurdo poichè il ruolo di ajax è proprio quello di non dover ricaricare le pagine.
    Dunque perchè assume questo comportamento di default????

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    Ci sarà qualche errore js:

    codice:
    $(function(){
    $("#apri").click(function(event){
    	event.preventDefault();
    	$.ajax({ type: "GET", 
            url: "apri.php" }); 
    });
    });
    Dunque perchè assume questo comportamento di default????
    L'evento è il click su un link, se non vuoi che avvenga devi intercettare e impedire la chiamata http, ajax non centra nulla

  7. #7
    In ogni caso, anche se il tuo codice funzionasse correttamente, non fa nulla con la risposta alla richiesta AJAX quindi non caricherebbe il contenuto della pagina ugualmente.
    Visita il mio blog e canale YouTube dedicati a programmazione web e sicurezza informatica.

  8. #8
    Utente di HTML.it L'avatar di wino_7
    Registrato dal
    Dec 2006
    Messaggi
    537
    Il mio codice non deve caricare nulla.
    Deve solo chiamare uno script sul server e rimanere fermo nella pagina in cui si trova.
    Lo script sul server farà delle cose che all'utente non interessa perciò non devo notificare nulla.
    Dunque come posso fare che cliccando su un link effettuo una chiamata allo script senza fare nient'altro?

  9. #9
    Ah, avevo capito che tu volessi caricare il contenuto di apri.php in un div, e invece, nel caso in cui AJAX fosse disabilitato aprire direttamente apri.php nel browser... In questo caso il tuo codice dovrebbe essere giusto, del resto ho provato questo che è praticamente uguale al tuo e funziona:

    codice:
    <html>
    	<head>
    		<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    		<script type="text/javascript">
    			$(function() {
    				$('#click').click(function() {
    					$.get('URL', function(data) {
    						// ...
    					});
    					return false;
    				});
    			});
    		</script>
    	</head>
    	<body>
    		Apri
    	</body>
    </html>
    L'ho testato con Firefox ed è tutto ok, a questo punto potrebbe essere un problema di browser. Che utilizzi?
    Visita il mio blog e canale YouTube dedicati a programmazione web e sicurezza informatica.

  10. #10
    Utente di HTML.it L'avatar di wino_7
    Registrato dal
    Dec 2006
    Messaggi
    537
    Ragazzi grazie dell'aiuto, ma era abbastanza normale che non funzionasse se nel mio codice mancava questo
    codice:
    <script type="text/javascript" src="Javascript/jquery-1.7.1.min.js"></script>
    io l'ho sempre detto che la programmazione fa male al cervello.

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.