C'est ma table -
<table>
<tr>
<td>ABC</td>
</tr>
<tr>
<td> </td>
</tr>
</table>
Et je veux supprimer cette ligne de tableau:
<tr>
<td> </td>
</tr>
Ma sortie attendue est:
<table>
<tr>
<td>ABC</td>
</tr>
</table>
Est-ce possible ?? s'il vous plaît aidez-moi
5 réponses
Comme vous avez tagué votre question avec le tag php, je recommanderais d'utiliser une expression régulière.
Le motif \s*<tr>\s*<td> <\/td>\s*<\/tr>
trouvera le tr
avec un vide () td
.
Pour tester et examiner l'expression régulière, vous pouvez jeter un œil ici: https://regex101.com/r/ ax6Xdg / 1
Ensemble, cela ressemblera à quelque chose comme ceci:
$table = "<table>
<tr>
<td>ABC</td>
</tr>
<tr>
<td> </td>
</tr>
</table>";
$pattern = "/\s*<tr>\s*<td> <\/td>\s*<\/tr>/";
var_dump( preg_replace( $pattern , "" , $table ) );
Cela produira quelque chose de très similaire à ceci:
string '<table>
<tr>
<td>ABC</td>
</tr>
</table>' (length=60)
Vous pouvez le faire en utilisant la fonction JQuery .remove()
. Vous pouvez le rechercher ici
Modifier: si vous souhaitez localiser cette balise spécifique, vous pouvez le faire en utilisant .next()
lire ici, .find()
lire ici, .parent()
lire ici, .children
lire ici
Ajoutez simplement id
à votre tableau:
<table id="tableid">
<tr>
<td>ABC</td>
</tr>
<tr>
<td> </td>
</tr>
</table>
Ce script trouve
, s'il est trouvé, alors supprimez-le!
$('#tableid tr').each(function() {
if ($(this).find('td').html()==' ') $(this).remove();
});
Si vous voulez trouver du texte, puis le supprimer, remplacez html()
par text()
$('#tableid tr').each(function() {
if ($(this).find('td').text()=='ABC') $(this).remove();
});
Lors du rendu du tableau, ajoutez une classe unique pour les lignes que vous souhaitez supprimer. Disons que la classe est: _rowToDelete
, puis en utilisant jQuery, supprimez toutes les lignes qui ont cette classe.
Dans l'exemple ci-dessous, lorsque vous cliquez sur le bouton, les lignes sont supprimées, vous pouvez donc voir les modifications. Mais vous pouvez faire la même chose lors du chargement de la page si vous le souhaitez.
$(function() {
$("#removeBtn").click(function() {
$("._rowToDelete").remove() ;
});
}) ;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td>ABC 1</td>
</tr>
<tr class="_rowToDelete">
<td> </td>
</tr>
<tr>
<td>ABC 2</td>
</tr>
<tr class="_rowToDelete">
<td> </td>
</tr>
<tr>
<td>ABC 3</td>
</tr>
<tr class="_rowToDelete">
<td> </td>
</tr>
</table>
<a href="javascript:;" id="removeBtn">Remove</a>
Vous devriez essayer ceci:
<table>
<tr id="abc>
<td>ABC</td>
</tr>
<tr id="remove">
<td> </td>
</tr>
<script>
$('#remove').remove();
</script>
De nouvelles questions
php
PHP est un langage de script largement utilisé, de haut niveau, dynamique, orienté objet et interprété, principalement conçu pour le développement Web côté serveur. Utilisé pour les questions sur le langage PHP.