Bonjour à tous

Je mets à jours une base de donnée avec ajax.
Quand je change la valeur d'un input ou select, il me à jour la base de donnée immédiatement.
Puis quand c'est fait avec succèes, le champs à un cadre vert.

Ca marche partiellement, sauve que tous mes champs sont vert.
Voici le code HTML et disons que je mets à jour le
chart_borderWidth
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<div class="form-row sensor-11">
							<div class="form-group col-sm-6">
								<label class="form-check-label" for="chart_borderWidth-11">Epaisseur</label>
								<input id="chart_borderWidth-11" data-id="11" name="chart_borderWidth" type="number" min="1" max="4" class="form-control form-control-sm input-square" value="4">
						  		<small class="text-info" id="chart_borderWidthHelp" class="form-text text-muted">Epaisseur de la courbe</small>
						  	</div>
						  	<div class="form-group col-sm-6">
						  		<label class="form-check-label" for="pointStyle-11">Point</label>
						  		<select id="pointStyle-11" data-id="11" name="chart_pointStyle_id_chart_pointStyle" class="form-control form-control-sm input-square">
									<option value="4">Cicle</option><option value="5">Cross Rot</option><option value="3">Rectangle</option><option value="2">Rectangle rot</option><option value="6">Star</option><option value="1" selected="selected">Triangle</option>								</select>
								<small class="text-info" id="chart_pointStyleHelp" class="form-text text-muted">Forme du point</small>
						  	</div>
						</div>

Pour cela, l'idé et chercher le sensor avec l'id 11. Je l'identifie avec la class senor-11

Code JQUERY : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
success: function (data) {    
            $('.sensor-'+data["id_sensor"]);
        }
Puis je cherche l'élément avec le nom 'chart_borderWidth' (il y a en a qu'un)

Code JQUERY : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
success: function (data) {    
            $('.sensor-'+data["id_sensor"])..closest('div[name^="'+data["name"]+'"]');
        }
Puis je cherche son parent et j'ajoute la class hasSuccess
Code JQUERY : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
success: function (data) {    
            $('.sensor-'+data["id_sensor"]).closest('div[name^="'+data["name"]+'"]').parent('div[class^="form-group"]').addClass("has-success");
        }

Le problème c'est qu'il y a plusieurs class 'form-group'. et il semble que la classe 'has-succes' est ajoutée à tous les éléments qui ont la class 'form-group' et pas juste à son parent.

Est-ce que je m'y suis bien pris?