Faire une boucle sur l'id d'une colonne en html

Résolu/Fermé
achrefBIG Messages postés 27 Date d'inscription samedi 2 janvier 2021 Statut Membre Dernière intervention 3 juin 2021 - 25 févr. 2021 à 14:51
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 - 26 févr. 2021 à 00:14
Bonjour, je suis débutant avec javascript, et j'ai un problème surlequel j'ai passé plus qu'un jour sans trouver une solution. Le problème c'est que pour la colonne de mon tableau ( <td><input id="stsValue" th:type="text" disabled="disabled"></td> ) j'ai besoin de récuperer les 3 premiers lettres de la 4éme colonne(PART_NOTE). Mon code javascript réussit à récuperer les 3 premiers lettres sauf que j'ai pas réussi à les insérer dans les lignes de mon tableau. Est ce qu'il y'a une manière pour faire une boucle sur l'id stsValue de la deuxième colonne?


<table id="faultRequests"  class="table table-striped table-bordered table-hover">
							<thead>
								<tr class="table-info">
									<th>OP</th>
									<th>STS</th>
									<th>PART_NOTE</th>
									<th>MAND_IF</th>
									<th>PROLOG</th>
								</tr>
							</thead>
							<tbody>
								<tr id="requests" th:each="request : ${faultRequest}">
									<td th:text="${request.workpackage_linenb}">OP</td>
									<td><input id="stsValue" th:type="text" disabled="disabled"></td>
									<td id="part_note" th:text="${request.part_note}">PART_NOTE</td>
									<td th:text="${request.mand_if}">MAND_IF</td>
									<td>PROLOG</td>
								</tr>
							</tbody>
						</table>






<script th:inline="javascript">
					/*<![CDATA[*/
					var faultRequest = /*[[${faultRequest}]]*/"";
					/*]]>*/
				
				
				var part_note ="";
				var sts = "";
				var notes = [];
				//console.log(faultRequest);
				for(var i = 0; i < faultRequest.length; i++){
				 	part_note = faultRequest[i].part_note;
				 	sts = part_note.substr(0,3);
				 	notes.push(sts);
			 	}
			 		
			    	for(var i = 0; i < faultRequest.length; i++){
						document.getElementById("stsValue").value = notes[i];
				
				}
</script>
A voir également:

4 réponses

jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
25 févr. 2021 à 15:02
Bonjour,

Déjà .. Un ID (comprendre IDENTIFIANT ) se doit d'être UNIQUE.

Et puis.. d'où vient ta variable faultRequest ?
Qu'est-ce qu'elle contient ?
Pourquoi ne pas faire ce traitement en amont ( au moment où tu génères le contenu de ta variable faultRequest au lieu de vouloir le faire à posteriori en js ?

0
achrefBIG Messages postés 27 Date d'inscription samedi 2 janvier 2021 Statut Membre Dernière intervention 3 juin 2021
25 févr. 2021 à 15:52
La variable FaultRequest je l'envoie depuis le controleur, elle contient une liste d'objets que je les récupère depuis la base de données (je travaille avec spring boot).

Pouvez vous 'm'expliquer votre proposition. J'ai pas bien compris
0
achrefBIG Messages postés 27 Date d'inscription samedi 2 janvier 2021 Statut Membre Dernière intervention 3 juin 2021
Modifié le 25 févr. 2021 à 15:58
Maitenant j'ai fait ce traitement dans une méthode dans le controleur, et je récupère bien les valeurs de substring dans une liste. Mais comment faire pour faire un compteur sur la liste qui contient les valeurs de substring. Parce que j'ai pas le droit de faire deux compteurs sur le meme tableau, y'a t_il une autre façon pour la faire?

<tbody>
								<tr id="requests" th:each="sts :${stsList}" th:each="request : ${faultRequest}">
									<td th:text="${request.workpackage_linenb}">OP</td>
									<td th:text="${sts}"></td>
									<td id="part_note" th:text="${request.part_note}">PART_NOTE</td>
									<td th:text="${request.mand_if}">MAND_IF</td>
									<td>PROLOG</td>
								</tr>
	</tbody>
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
25 févr. 2021 à 17:11
Il ne faut pas un second compteur .. mais simplement mettre le résultat dans ta variable request ... au même titre que tu y a déjà request.mand_if, request.part_note ....

Mais là.. ce n'est plus du javascript mais du Java.
Si tu ne sais pas comment faire, je t'invite à poser une question dans le forum JAVA.
0
achrefBIG Messages postés 27 Date d'inscription samedi 2 janvier 2021 Statut Membre Dernière intervention 3 juin 2021 > jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024
25 févr. 2021 à 21:16
J'ai fait comme ça, mais j'ai une difficulté comment récuperer les elements dans le html
List<OFRequest> faultRequest = faultMetierImpl.consultFaultRequests();
	    model.addAttribute("faultRequest", faultRequest);
	    
	    List<String> stsList = faultMetierImpl.consultPartNotes();
	    model.addAttribute("stsList", stsList);
	    
	    List<Object> listefinale= new ArrayList<>();
	    listefinale.addAll(faultRequest);
	    listefinale.addAll(stsList);
	    
	    model.addAttribute("listefinale", listefinale);
	    
	    return "openFaultsDashbord";
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707 > achrefBIG Messages postés 27 Date d'inscription samedi 2 janvier 2021 Statut Membre Dernière intervention 3 juin 2021
25 févr. 2021 à 21:22
Comme je te l'ai indiqué :

Mais là.. ce n'est plus du javascript mais du Java.
Si tu ne sais pas comment faire, je t'invite à poser une question dans le forum JAVA.
0
achrefBIG Messages postés 27 Date d'inscription samedi 2 janvier 2021 Statut Membre Dernière intervention 3 juin 2021
25 févr. 2021 à 21:50
J'ai pas eu une réponse, toujours bloqué
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
25 févr. 2021 à 22:57
Ben faut attendre ....
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707 > jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024
25 févr. 2021 à 23:44
Merci de ne pas créer plusieurs fois la même question sur le forum actuellement tu as ta question ouverte dans le forum Java il faut attendre que le personne puisse te répondre...
0
achrefBIG Messages postés 27 Date d'inscription samedi 2 janvier 2021 Statut Membre Dernière intervention 3 juin 2021 > jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024
Modifié le 25 févr. 2021 à 23:48
c'est pas la meme questionn j'ai besoin d'une réponse, c'est urgent
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707 > achrefBIG Messages postés 27 Date d'inscription samedi 2 janvier 2021 Statut Membre Dernière intervention 3 juin 2021
26 févr. 2021 à 00:14
Quoi qu'il en soit, ta question concerne, là encore.. le JAVA ... et non le html !
0