2009-11-03 6 views
1

Cela peut être une question un peu étrange, mais Im essayant de comprendre la fonction qui va supprimer les numéros qui se répètent eux-mêmes.Supprimer le même texte répliqué avec jQuery

ceci est mon html

1234123<br> 
23434<br> 
5696<br> 
5696<br> 
34096756098<br> 

J'ai besoin fonction qui renverra les numéros numéros sans ceux qui sont les dupliquer auto

1234123<br> 
23434<br> 
5696<br> 
34096756098<br> 

Merci pour votre aide à l'avance

Répondre

1

Vous devez essentiellement obtenir votre chaîne, via str = $ ('# myElement') html(), puis exécutez la fonction ci-dessous, qui divise la chaîne. par saut de ligne, des bandes d'éléments non uniques, puis rejoint à nouveau ensemble:

function uniquediv(str) { 
    this.input = str.split("<br>\n"); 
    this.output = []; 
    this.output.contains = function (value) { 
     for (this.j in this) { 
      if (this[this.j] == value) 
       return true; 
     } 
     return false; 
    } 
    for (this.i in this.input) { 
     if (!this.output.contains(this.input[i])) 
      this.output.push(this.input[i]); 
    } 
    return this.output.join("<br>\n"); 
} 
+0

Si vous utilisez 'text()', vous n'obtiendrez des balises ''
. – bobince

+0

Mon erreur. J'ai modifié ceci pour corriger l'erreur. – Travis

0

Que diriez-vous ceci: diviser le contenu par <br>, puis interférer sur cela dans un nouveau tableau temporaire, puis le remplacer en place:

var content = $('#demo').html().split('<br>'); 
var tempArray = []; 
for (var i=0; i<content.length; i++) { 
    if ($.inArray(content[i], tempArray) === -1) { 
     tempArray.push(content[i]); 
    } 
} 
$('#demo').html(tempArray.join('<br>')); 

pour cette html:

<div id="demo"> 
    1234123<br> 
    23434<br> 
    5696<br> 
    5696<br> 
    34096756098<br> 
</div> 
Questions connexes