Poster une réponse à un sujet: [Javascript] Encoder tous les paramètres d'un formulaire
Attention, ce sujet est un sujet ancien (5835 jours sans réponse)
max
oui, il est sympa ce plugin, je l'ai utilisé pour quelques formulaires "pénibles" et ils ne l'étaient plus grâce à lui
zion
J'ai mis en prod le script avec le jquery de gizmo, c'est sublimissime!
Merci
Merci
zion
zion
Benh toi tu encodes pas
rfr il utilise ta solution et il encode
mais on me dit que je peux pas toucher à ce serveur aujourd'hui, je suis puni ça consomme trop de ressources, ils en ont besoin
rfr il utilise ta solution et il encode
mais on me dit que je peux pas toucher à ce serveur aujourd'hui, je suis puni ça consomme trop de ressources, ils en ont besoin
Clandestino
zion
le base64 c'est une idée, je vais essayer la version rfr avant, si ça merde pourquoi pas en base64, mais pourquoi ils ont pas prévu une jolie fonction toute faite
berzemus
Salut tout le monde.
La dernière fois que j'ai du faire ça j'ai simplement encodé le contenu des champs en base64.
Une autre solution serait d'en faire un joli objet (Json), de le sérialiser, l'encoder en base64, et de l'envoyer.
Le script quant à lui déserialize, dé-jsonise, et il à un joli tableau tout de suite prêt à l'emploi (après les vérifications de rigueur).
La dernière fois que j'ai du faire ça j'ai simplement encodé le contenu des champs en base64.
Une autre solution serait d'en faire un joli objet (Json), de le sérialiser, l'encoder en base64, et de l'envoyer.
Le script quant à lui déserialize, dé-jsonise, et il à un joli tableau tout de suite prêt à l'emploi (après les vérifications de rigueur).
rfr
Donc:
- var cQueryString="url_to_pass.ext?dummy=0";
- var aFormObj=document.forms[0].elements;
- aFormObj.forEach(fObject, function(fObject) {
- if(fObject.type in ["text","textarea","button","hidden"]) { cQuesryString += "&" + fObject.name + "=" + urlencode(fObject.value); }
- else if(fObject.type == "checkbox") { cQuesryString += "&" + fObject.name + "=" + fObject.checked; }
- else if(fObject.type == "select") { cQueryString += "&" + fObject.name + "=" + urlencode(fObject.options[fObject.selectedIndex].value); }
- });
- location.href=cQueryString;
rfr
function urlencode(str) {
return escape(str).replace('+', '+').replace(' ', '+').replace('*', '*').replace('/', '/').replace('@', '@');
}
Suffit de passer chaque valeur à la fonction urlencode.
return escape(str).replace('+', '+').replace(' ', '+').replace('*', '*').replace('/', '/').replace('@', '@');
}
Suffit de passer chaque valeur à la fonction urlencode.