Vous pouvez le faire comme suit;
var ftds = document.querySelectorAll("tr > td:first-child"),
choose = document.getElementById("choose");
choose.addEventListener("change", function isChosen(e) {
ftds.forEach(function(ftd) {
var dotless = ftd.textContent.replace(/\./g, "");
ftd.parentElement.style.backgroundColor = ~ftd.textContent.indexOf(e.target.value) ||
~dotless.indexOf(e.target.value) ? "green" : "white";
});
});
<table>
<tr>
<th>Number</th>
<th>Name</th>
</tr>
<tr>
<td>200.10.1234</td>
<td>Maria Anders</td>
</tr>
<tr>
<td>202.10.9234</td>
<td>Francisco Chang</td>
</tr>
</table>
<label for="choose">Chose ID:</label>
<input id="choose" required>
J'étais un peu paresseux pour ajouter un bouton mais onglet frappant ou en cliquant quelque part sur l'élément d'entrée devrait faire.
Indice: ~(-1) === 0
; changements de tilde -1 à 0 (valeur falsey)
OK laisse continuer avec un exemple Bootstrap. Cette fois, nous allons définir une classe pour la ligne qui contient le numéro que nous cherchons et l'ajouter à notre fichier CSS. Que ce soit quelque chose comme;
.found {
outline: #2E8B57 solid 1px;
background-color: #98FB98;
}
Maintenant, si nous vérifions tous les premiers éléments <td>
(qui contient les données numériques) dans chaque rangée. Si elle ne contient pas nous allons supprimer la classe .found
du parentElement.classList
(si la liste de classes de l'élément parent ne l'a pas, aucune erreur ne sera renvoyée) si nous trouvons ce que nous cherchons, alors nous ajouterons la classe .found
au parent liste de classe de l'élément.
Très simple ..
var ftds = document.querySelectorAll("tr > td:first-child"),
choose = document.getElementById("choose");
choose.addEventListener("change", function isChosen(e) {
ftds.forEach(function(ftd) {
var dotless = ftd.textContent.replace(/\./g, "");
~ftd.textContent.indexOf(e.target.value) ||
~dotless.indexOf(e.target.value) ? ftd.parentElement.classList.add("found")
: ftd.parentElement.classList.remove("found");
});
});
.found {
outline: #2E8B57 solid 1px;
background-color: #98FB98;
}
<html lang="en">
<head>
<title>Bootstrap Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<table class="table table-hover">
<thead>
<tr>
<th>Number</th>
<th>First Name</th>
<th>Last Name</th>
</tr>
</thead>
<tbody>
<tr>
<td>200.10.1234</td>
<td>Maria</td>
<td>Anders</td>
</tr>
<tr>
<td>202.10.9234</td>
<td>Fransisco</td>
<td>Chang</td>
</tr>
<tr>
<td>203.10.5678</td>
<td>Fabrio</td>
<td>Donetti</td>
</tr>
</tbody>
</table>
</div>
<label for="choose">Search ID:</label>
<input id="choose" required>
</body>
</html>
Qu'avez-vous essayé jusqu'à présent? – lxe
J'ai lu la documentation: http://bootstrap-table.wenzhixin.net.cn/documentation/ mais je n'arrive toujours pas à résoudre mon problème. – Lahmacun