Soyez le premier à donner votre avis sur cette source.
Snippet vu 9 272 fois - Téléchargée 17 fois
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>Formulaire et données GET</title> </head> <body> <form name="test" method="get" action=""> <input type="text" name="param1" value="" /> <input type="text" name="param2" value="" /> <input type="submit" /> </form> <script type="text/javascript"> // FONCTIONS function getURLParams() { var url = document.location.href.split("?"); if(url.length > 1) { // Params found un URL ! var get = new Object; var params = url[1].split("&"); for(var i in params) { var tmp = params[i].split("="); get[tmp[0]] = unescape(tmp[1].replace("+", " ")); } // Return Object (data are accessible in array too) : get["paramname"] = get.paramname return get; } // No params found in URL ! return false; } function isset(data) { if(typeof(data) == "undefined") return false; return true; } // CODE DE TEST $_GET = getURLParams(); if(isset($_GET.param1)) document.write($_GET.param1 + "<br />"); if(isset($_GET.param2)) document.write($_GET.param2 + "<br />"); </script> </body> </html>
17 janv. 2011 à 10:59
Je n'ai pas testé ton code mais ta boucle for me paraît compliquée: pourquoi ne pas parcourir le tablea $_GET comme un tableau associatif ? Ce serait bien plus simple, non?
Sinon j'aime bien l'idée de transposer les valeurs $_GET en JS. Faudrait considérer l'aspect sécuritaire de ta démarche...
17 janv. 2011 à 14:42
et c'est en jquery...
A rajouter dans le $(document).ready(function()
$.extend({
getUrlVars: function(){
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for(var i = 0; i < hashes.length; i++)
{
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
},
getUrlVar: function(name){
return $.getUrlVars()[name];
}
});
comme ça on peut utiliser soit $.getUrlVars() qui nous renvoi tout sous forme de tableau
ou bien utiliser $.getUrlVar('leNomDeMaVariable') qui renvoi juste la valeur de la variable
17 janv. 2011 à 15:48
Mais pour la forme le code est propre. Ne faudrait-il pas le mettre dans les snippets?
18 janv. 2011 à 15:27
je ne comprend pas pourquoi un tel commentaire on est sur www.javascriptfr.com et pas sur www.jqueryfr.com
18 janv. 2011 à 16:44
la prochaine fois, prends le temps, réfléchis et ne soit pas si impulsif...
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.