2010-10-22 4 views
1

J'ai besoin d'aide avec un petit code que j'ai ci-dessous. Je suis un débutant en javascript, donc j'espère que quelqu'un pourrait me aiderbesoin d'aide pour passer les paramètres d'URL aux variables

je l'ai utilisé la fonction ci-dessous pour saisir les paramètres de l'URL:

<script type="text/javascript"> 
function gup(name) 
{ 
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); 
var regexS = "[\\?&]"+name+"=([^&#]*)"; 
var regex = new RegExp(regexS); 
var results = regex.exec(window.location.href); 
if(results == null) 
    return ""; 
else 
    return results[1]; 
} 
</script> 

maintenant le problème est que j'ai besoin de définir que les paramètres en variable afin que je puisse utiliser cette variable dans quelque chose d'autre.

par exemple j'ai formulaire ci-dessous:

<form method="get" action="#" name="dealer"> 
    insert dealer code<br /> 
    <input type="text" name="dcode" /> 
    <input type="submit" value="submit" /> 
</form> 

donc chaque fois que je pressais le bouton soumettre, URL aura paramètre. Je veux utiliser ce paramètre comme variable. voici le code de sortie

var dealer_param = gup('dcode'); 
document.write(dealer_param); 

encore une fois, par exemple, j'ai définir des variables:

var a1 = "John Doe" 
var a2 = "Jane Doe" 

maintenant je veux taper a1 dans la zone de forme et quand je pressais soumets que je veux javascript m'a donné John Doe comme la sortie et non a1 comme je suis actuellement avoir

j'espère que ce n'est pas beaucoup plus d'une question confuse

merci à l'avance

~ aji

Répondre

0

La solution la plus simple consiste à stocker les valeurs dans un tableau assocuatif au lieu de variables individuelles. Par exemple.

var arr; 
arr['a1'] = "John Doe"; 
arr['a2'] = "Jane Doe"; 

// ... 

var dealer_param = gup('dcode'); 
document.write(arr[dealer_param]); 

Une deuxième approche consiste à utiliser eval - que je personnellement recommander contre pour diverses raisons, y compris les questions de sécurité.

var a1 = "John Doe" 
var a2 = "Jane Doe" 

var dealer_param = gup('dcode'); 
document.write(eval(dealer_param)); 
+0

wow super, merci DVK .. les 2ème options fonctionne comme je le voulais – aji

+0

@aji - de rien. N'hésitez pas à voter pour la réponse :) – DVK

Questions connexes