Faire une boucle sur l'id d'une colonne en html [Résolu]

Signaler
Messages postés
30
Date d'inscription
samedi 2 janvier 2021
Statut
Membre
Dernière intervention
3 juin 2021
-
Messages postés
32942
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
-
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>

4 réponses

Messages postés
32942
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
3 557
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 ?

Messages postés
30
Date d'inscription
samedi 2 janvier 2021
Statut
Membre
Dernière intervention
3 juin 2021

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
Messages postés
30
Date d'inscription
samedi 2 janvier 2021
Statut
Membre
Dernière intervention
3 juin 2021

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>
Messages postés
32942
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
3 557
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.
Messages postés
30
Date d'inscription
samedi 2 janvier 2021
Statut
Membre
Dernière intervention
3 juin 2021
>
Messages postés
32942
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021

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";
Messages postés
32942
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
3 557 >
Messages postés
30
Date d'inscription
samedi 2 janvier 2021
Statut
Membre
Dernière intervention
3 juin 2021

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.
Messages postés
30
Date d'inscription
samedi 2 janvier 2021
Statut
Membre
Dernière intervention
3 juin 2021

J'ai pas eu une réponse, toujours bloqué
Messages postés
32942
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
3 557
Ben faut attendre ....
Messages postés
32942
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
3 557 >
Messages postés
32942
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021

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...
Messages postés
30
Date d'inscription
samedi 2 janvier 2021
Statut
Membre
Dernière intervention
3 juin 2021
>
Messages postés
32942
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021

c'est pas la meme questionn j'ai besoin d'une réponse, c'est urgent
Messages postés
32942
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
3 557 >
Messages postés
30
Date d'inscription
samedi 2 janvier 2021
Statut
Membre
Dernière intervention
3 juin 2021

Quoi qu'il en soit, ta question concerne, là encore.. le JAVA ... et non le html !