11
votes

Comment effacer la grille de la grille?

Je crée une fonction de grille dynamique qui liera différentes tables à partir de DB dans un jeu de données, puis attribuez-la au GridView! C'est ainsi que cela fonctionne, j'ai une liste déroulante, GridView et un bouton, le bouton incendiera une fonction spécifique basée sur la sélection DropdownList, puis GridView liera les données, mon problème est que lorsque vous appuyez sur le bouton pour la 1ère fois, Le GridView liera les données à partir de DB, pour une deuxième pression, le réseau de la grille en double dupliquera les données des données de la 1ère fois-ci. Comment effacer la grille de la grille pour éviter la duplication de données? XXX


1 commentaires

Où est la touche, cliquez sur le code de manipulation?


4 Réponses :


26
votes

Désolé, c'est en C #, mais appelez-le simplement avant de lier les nouvelles données et il suffirait de supprimer les données existantes ... Sauf si ce problème est que la source de données que vous attribuez a les données dupliquées.

gridview.Columns.Clear();


0 commentaires

1
votes

Vous pouvez réinitialiser sa source de données et la reculer par exemple xxx

puis le réutiliser


1 commentaires

Vous ne pouvez pas attribuer une chaîne vide à GridView DataSource, s'il vous plaît essayez-le.



0
votes

Généralement, cela ne se produit pas lorsque vous retrouvez la grille comme: xxx

Je pense que le problème est dans votre fonction récupérer des données: xxx

Vérifiez à l'intérieur de cela si vous recherchez des données à chaque fois dans un nouveau jeu ou en utilisant le même (peut être déclaré à la portée globale ou passée de votre classe à la composante d'accès aux données). J'avais perdu toute la nuit une fois pour résoudre ce problème: (


0 commentaires

0
votes

Placez votre GridView dans une table avec un ID code>: xxx pré>

puis appelez à partir d'un bouton Cliquez sur votre fonction JavaScript: P>

function clearGridview()
{
var rows = document.getElementById('myTable').getElementsByTagName('tbody')  [0].getElementsByTagName('tr').length;
if(rows!=0)
    document.getElementById("myTable").deleteRow(0);
}


0 commentaires