Attribuer localStorage pour qu'un radio soit disabled
Posté : 28 sept. 2024, 18:03
Voila mon probleme: j'ai des boutons radio dans une boucle, dans un formulaire (en spring boot) et j'aimerai que le bouton radio qui a ete coche reste coche apres soumission du form et surtout quand on reviens sur la page de choix, histoire de ne pas pouvoir recoche le meme choix(en JS).
En gros, je fais un choix, je submit =>ca m'envoie sur une autre page mais quand je reviens sur ma page de choix, le choix precedent devra etre disabled.
mon form:
Ma fonction JS pour recuperer le choix dans le local strorage:
Et ensuite... c'est le drame.
Je ne sais pas comment faire ma fonction pour qu'une fois de retour sur ma page de choix, mon choix precedent (localeStorage) ne soit plus cochable
J'ai essayé ca:
mais ca ne fonctionne pas...
Merci de votre aide
En gros, je fais un choix, je submit =>ca m'envoie sur une autre page mais quand je reviens sur ma page de choix, le choix precedent devra etre disabled.
mon form:
Code : Tout sélectionner
<form action="#" th:action="@{/piece}" modelAttribute="piece" method="post"
id="formP" onsubmit="">
<tr th:each="piece: ${pieces}">
<input type="submit" name="submit" value="${piece.nom}" th:value="'Valider : '+ ${piece.nom}"
onclick="saveform()" />
<label class="radio-image">
<input type="radio" name="img" th:value="${piece.img}" onclick="check()" required>
<img th:src="@{${'/images/'+ piece.img}}" />
</label>
<br>
</tr>
</form>
Code : Tout sélectionner
function check() {
var btnPieceSub = document.getElementsByName('submit');
var btnPieceRad = document.getElementsByName('img');
for (i = 0; i < btnPieceRad.length; i++) {
if ((btnPieceRad[i].checked)) {
var valeur = btnPieceRad[i].value;
localStorage.setItem(valeur, valeur);
}
}
}

J'ai essayé ca:
Code : Tout sélectionner
function saveform() {
var ls = localStorage.getItem(valeur);
ls.getElementsByTagName('radio').disabled = true;
}
Merci de votre aide