2009-06-10 5 views
31
<script language="javascript" type="text/javascript"> 
var scrt_var = 10; 
</script> 

HTML Parte:Pasando variables Javascript para <a href >

<html> 
this is a <a href ="2.html & Key= scrt_var">Link </a> 
</html> 

sólo quiero enviado la variable javascript para enlazar (parámetro url)

No Ajax

+0

por favor enmarque su pregunta correctamente para que pueda obtener el máximo de ella –

+0

'' sin 'l'? –

Respuesta

46

Si quiere que sea dinámico, para que se use el valor de la variable en el momento del clic, haga lo siguiente:

<script language="javascript" type="text/javascript"> 
var scrt_var = 10; 
</script> 
<a href="2.html" onclick="location.href=this.href+'?key='+scrt_var;return false;">Link</a> 

Por supuesto, esa es la solución rápida y sucia. Realmente debería tener un script que después de la carga de DOM agregue un controlador onclick a todos los elementos relevantes <a>.

+1

Excelente. ¡Esto es perfecto para mí! . Gracias Bllixt – joe

+1

no puedo usar esa variable pero puedo verla en la barra de direcciones. ¿Como puedo usar lo? –

+0

Hola. ¿Puedo usar en lugar de variable una función que devuelve una cadena? –

10
<script> 
    var scrt_var = 10; 
    document.getElementById("link").setAttribute("href",scrt_var); 
</script> 
<a id="link">this is a link</a> 
+0

Creo que sería algo como setAttribute ("href", "2.html & Key =" + scrt_var) para formar el enlace completo. – Kylotan

+0

Sí, eso funciona, Gracias por el truco corto y simple :) @erenon – Faizan

+0

@erenon ¿Hay alguna manera de agregar target_new a este código para abrir en una nueva pestaña? gracias. – Andrew

7

Alternativamente es posible que utilices un document.write:

...HTML 
<script type="text\javascript"> 
var location = "http://"; 
document.write('<a href="' + location + '">Link text</a>'); 
</script> 
...the rest 
13

puesto atributo id en el elemento de anclaje

<a id="link2"> 

conjunto href atributo en caso de carga de página:

var scrt_var = 10; 
var strLink = "2.html&Key=" + scrt_var; 
document.getElementById("link2").setAttribute("href",strLink); 
7
<html> 

<script language="javascript" type="text/javascript"> 
var scrt_var = 10; 
openPage = function() { 
location.href = "2.html?Key="+scrt_var; 
} 
</script> 

this is a <a href ="javascript:openPage()">Link </a> 
</html> 
+0

Usando el joe

+1

¿Qué es Varaiabke? –

+0

lo siento. Eso es Variable .. Error de ortografía ... – joe

0

Si usa internatio nalización (i18n), y después de cambiar a otro idioma, se puede agregar algo como ?locale=fr o ?fr al final de la url. Pero cuando va a otra página al hacer clic en evento, el cambio de traducción no será estable.

Para este tipo de casos, se debe generar una función de controlador de eventos click DOM para manejar todos los atributos a.href almacenando el estado de cambio como una variable y agregándolo a la cola de todos los códigos a.

Cuestiones relacionadas