Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Remplacer un paramètre URL

4 réponses
Avatar
Stéphane Santon
Bonjour,

Je cherche un moyen de remplacer par JS les paramètres d'une url de
bouton :

<form class="bouton_action_post"
action="./?fixLat=45&fixLong=-0.6&fixPrec=150" method="post">

Pour remplacer les valeurs fixLat et fixLong.

Y a-t-il une fonction spéciale ou bien un ereg ?

--
Stéphane

Jeune Chambre Economique de Saintes *** http://www.jce-saintes.org
Agitateurs d'idées... accélérateurs de talents !

BTS Electrotechnique *** http://enselec.santonum.eu

4 réponses

Avatar
Bol
<form class="bouton_action_post"
action="./?fixLatE&fixLong=-0.6&fixPrec0" method="post">

Pour remplacer les valeurs fixLat et fixLong.

Y a-t-il une fonction spéciale ou bien un ereg ?



Il n'y a pas de fonction native, donc soit RegExp
soit une fonction d'une lib

PS : les & sont codées en entités HTML &amp;

A+
Bol
Avatar
SAM
Le 18/06/11 12:20, Stéphane Santon a écrit :
Bonjour,

Je cherche un moyen de remplacer par JS les paramètres d'une url de
bouton :

<form class="bouton_action_post"
action="./?fixLatE&fixLong=-0.6&fixPrec0" method="post">

Pour remplacer les valeurs fixLat et fixLong.

Y a-t-il une fonction spéciale ou bien un ereg ?



Ben ... d'où sortent ces valeurs ?

paske ... normalement ...
ce n'est pas compliqué et ne nécessite pas de JS

<form class="bouton_action_post" action="./" method="post">
<p>Fixer la longitude : <input name="fixLong" value="-0.6">
<p>Fixer la latitude : <input name="fixLat" value="45">
<p>Fixer la précision : <input name="fixPre" value="150">


après ... si vraiment ça doit se traiter par JS ...

<form onsubmit="return false" name="position">
<p>Fixer la longitude : <input name="fixLong">
<p>Fixer la latitude : <input name="fixLat">
</form>
<form class="bouton_action_post"
action="./?fixLatE&fixLong=-0.6&fixPrec0" method="post"
onsubmit="return fixer(this)">
<input type=submit>
</form>

<script type="text/javascript">
function fixer(quoi) {
var lg, lt, ok, url = quoi.action, f = document.forms['position'];
lg = f.fixLong.value;
lt = f.fixLat.value;
if(lg && lg!='' && lt && lt!='') {
quoi.action = url.replace('45',lt).replace('-0.6',lg);
ok = true;
}
return ok;
}
</script>


--
Stéphane Moriaux avec/with iMac-intel
Avatar
Stéphane Santon
Bonjour,

SAM a écrit :
Je cherche un moyen de remplacer par JS les paramètres d'une url de
bouton :
<form class="bouton_action_post"
action="./?fixLatE&fixLong=-0.6&fixPrec0" method="post">
Pour remplacer les valeurs fixLat et fixLong.



Ben ... d'où sortent ces valeurs ?



Elles sortent de la fonction CallBack de détection d'une nouvelle
position GPS sur un navigateur html5.

paske ... normalement ...
ce n'est pas compliqué et ne nécessite pas de JS

<form class="bouton_action_post" action="./" method="post">
<p>Fixer la longitude : <input name="fixLong" value="-0.6">
<p>Fixer la latitude : <input name="fixLat" value="45">
<p>Fixer la précision : <input name="fixPre" value="150">



Oui j'ai finalement pris cette syntaxe, et fait un
getElementbyId("fixLatInput").Vallue = newLatValue;

if(lg && lg!='' && lt && lt!='') {
quoi.action = url.replace('45',lt).replace('-0.6',lg);



Je voulais remplacer LA valeur courante de ce paramètre dans le lien,
qui n'est pas d'avance celle mentionnée.

MERCI ! :-)

--
Stéphane

Jeune Chambre Economique de Saintes *** http://www.jce-saintes.org
Agitateurs d'idées... accélérateurs de talents !

BTS Electrotechnique *** http://enselec.santonum.eu
Avatar
SAM
Le 20/06/11 10:22, Stéphane Santon a écrit :
SAM a écrit :

j'ai finalement pris cette syntaxe, et fait un
getElementbyId("fixLatInput").Vallue = newLatValue;



getElementbyId("fixLatInput").value
ou :
document.forms[0].fixLat.value
avec :
<input name="fixLat" id="fixLatInput" value="45">
par exemple.

if(lg && lg!='' && lt && lt!='') {
quoi.action = url.replace('45',lt).replace('-0.6',lg);



Je voulais remplacer LA valeur courante de ce paramètre dans le lien,
qui n'est pas d'avance celle mentionnée.



ce n'est qu'à peine + compliqué (si et seulement si les values sont
effectivement pré-remplies au chargement de la page) :

var f = document.forms[0],
oldLong = f.fixLong.defaultValue,
oldLat = f.fixlat.defaultValue,
lg = f.fixLong.value,
lt = f.fixLat.value;

quoi.action = url.replace(oldLat,lt).replace(oldLong,lg);


pas revérifié (en particulier avec IE)
--
Stéphane Moriaux avec/with iMac-intel