2011-09-26 12 views
10

ho un po 'di codice in questo modo:Reindirizzamento una pagina utilizzando Javascript, come quella di PHP header-> Location

$('.entry a:first').click(function() 
{ 
    <?php header("Location:" . "http://www.google.com"); ?> 
}); 

vorrei sapere come posso raggiungere questo obiettivo utilizzando Javascript.

+2

Poiché si ha a che fare con un tag di ancoraggio, perché non usare semplicemente 'Link text', invece di javascript? – bfavaretto

+0

Buona domanda. Un po 'strano qui. L'url terrà alcune variabili e quando un utente fa clic sul link, dovrebbe essere visualizzato fino alla pagina successiva. –

+0

@KeithDonegan puoi per favore rivedere e accettare una risposta, o aggiornare la tua domanda con qualche dettaglio in più – rlemon

risposta

11

Il codice PHP viene eseguito sul server, pertanto il reindirizzamento viene eseguito prima che il browser visualizzi anche il codice JavaScript.

Hai bisogno di fare il redirect in JavaScript troppo

$('.entry a:first').click(function() 
{ 
    window.location.replace("http://www.google.com"); 
}); 
+0

Perché il '.replace'? –

+0

Questo è il modo in cui ricordo di averlo appreso qualche tempo fa. Penso che ci fosse una sorta di problema con il pulsante indietro del browser se si assegnava semplicemente un nuovo valore. Ma penso che questo funzioni, anche – klaustopher

+0

Quasi perfetto. ad ogni modo per aprire questo in una nuova finestra? –

28

Non si può mescolare JS e PHP in questo modo, PHP è resa prima che la pagina viene inviato al browser (cioè prima della JS è gestito)

È possibile utilizzare window.location per cambiare la corrente pagina.

$('.entry a:first').click(function() { 
    window.location = "http://google.ca"; 
}); 
1

dell'applicazione È di js e php in tutto valido.

Devi capire un fatto che JS gira sul client, una volta caricata la pagina non interessa, se la pagina fosse una pagina php o jsp o asp. Esegue DOM ed è relativo solo ad esso.

Tuttavia si può fare qualcosa di simile

var newLocation = "<?php echo $newlocation; ?>"; 
window.location = newLocation; 

Vedete, per il momento lo script viene caricato, il codice di cui sopra rende in forma diversa, qualcosa di simile

var newLocation = "your/redirecting/page.php"; 
window.location = newLocation; 

Come sopra, ci sono molte possibilità di fusioni di php e js e quello che stai facendo non è uno di questi.

Problemi correlati