Tu ne le guide vers rien de précis et ton premier lien a l'air de dater (CSS 2.1, pas question d'alternance via CSS : la grande époque ;-) ).CSS (...)
<!doctype html><html><body>
<script>
function change(objetTr) {
objetTr.style.backgroundColor = 'red';
}
</script>
<table>
<tr onclick="change(this)">
<td>Voilà un exemple</td>
<td>Seconde cellule</td>
</tr>
</table>
<!doctype html><html><body>
<style>
.active {
background-color: red;
}
</style>
<script>
function changeClass(objetTr) {
objetTr.className = 'active';
// pour supprimer : objetTr.className = '';
// alternative plus récente (compatibilité visible sur https://developer.mozilla.org/en-US/docs/Web/API/Element/classList#Browser_compatibility)
// objetTr.classList.add('active');
// objetTr.classList.remove'active');
}
</script>
<table>
<tr onclick="changeClass(this)">
<td>Voilà un exemple</td>
<td>Seconde cellule</td>
</tr>
</table>
changer le style CSS en javascript
Pourquoi ajouter du javascript ?
$(function(){
var check_state = false;
$("tr[id^=DetailsProduit_]").click(function(event) {
var str = $(this).attr('id').substr(15);
if (check_state === false) {
$("#details-table_" + str).stop().slideDown("fast");
check_state = true;
var xmlhttp;
if(window.XMLHttpRequest)
{
xmlhttp = new XMLHttpRequest();
}
else
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if(this.readyState==4 && this.status==200)
{
document.getElementById("details-table_"+str).innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","../details_produit.php?num="+str,true);
xmlhttp.send();
}
else
{
$("#details-table_" + str).stop().slideUp(1000);
check_state = false;
}
event.preventDefault();
});
});
$('tr td').css({ 'background-color' : '#ffffff'});
$('td', this).css({ 'background-color' : '#777777' });
Désolé mais ça ne marche pas.tu testes ta couleur si c'est pas celle que tu veux tu la changesCode:if($(this).css("background-color") == "#fff")
$(function(){
var check_state = false;
$("tr[id^=DetailsProduit_]").click(function(event) {
let $tr = $('#test tr');
if (check_state === true){
$(this).removeClass('active');
}
else {
$tr.removeClass('active');
$(this).addClass('active');
}
var str = $(this).attr('id').substr(15);
if (check_state === false) {
$("#details-table_" + str).stop().slideDown("fast");
check_state = true;
var xmlhttp;
if(window.XMLHttpRequest)
{
xmlhttp = new XMLHttpRequest();
}
else
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if(this.readyState==4 && this.status==200)
{
document.getElementById("details-table_"+str).innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","../details_produit.php?num="+str,true);
xmlhttp.send();
}
else
{
$("#details-table_" + str).stop().slideUp(1000);
check_state = false;
}
event.preventDefault();
});
});
$(function(){
var check_state = false;
$("tr[id^=DetailsProduit_]").click(function(event) {
var str = $(this).attr('id').substr(15);
if (check_state === false) {
$(this).addClass('active');
$("#details-table_" + str).stop().slideDown("fast");
check_state = true;
var xmlhttp;
if(window.XMLHttpRequest)
{
xmlhttp = new XMLHttpRequest();
}
else
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if(this.readyState==4 && this.status==200)
{
document.getElementById("details-table_"+str).innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","../details_produit.php?num="+str,true);
xmlhttp.send();
}
else
{
$(this).removeClass('active');
$("#details-table_" + str).stop().slideUp(1000);
check_state = false;
}
event.preventDefault();
});
});