2016-11-29 1 views
2

wie alle bekommen die text nach <br/>tag, wie der Text nach <br> Tag zu bekommen

meine html wie dieses ist

<i class="loc">cherry<br>From Shimla</i> 
<i class="loc">Apple<br>from kashmir</i> 
<i class="loc">banana<br>From bihar</i> 

erwartete Ausgabe: ["From Shimla","from kashmir","From bihar"];

i wie etwas versucht, bin diese

var arr = []; 
 

 
$('.loc').each(function(){ 
 
    arr.push($(this).text()); 
 
}); 
 
console.log(arr);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> 
 
<i class="loc">cherry<br>From Shimla</i> 
 
<i class="loc">Apple<br>from kashmir</i> 
 
<i class="loc">banana<br>From bihar</i>

Antwort

3

Sie können die br Element abzuzielen und .get(index) verwenden, um die zugrunde liegenden DOM-Element zu holen, nextSibling die Verwendung der Textknoten zielen. Dann kann nodeValue Eigenschaft verwendet werden, um den Text zu erhalten.

var arr = []; 
 
$('.loc').each(function() { 
 
    arr.push($(this).find('br').get(0).nextSibling.nodeValue); 
 
}); 
 
console.log(arr);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> 
 
<i class="loc">cherry<br>From Shimla</i> 
 
<i class="loc">Apple<br>from kashmir</i> 
 
<i class="loc">banana<br>From bihar</i>

Sie können weiter Sie Code als

var arr = $('.loc').map(function() { 
 
    return $(this).find('br').get(0).nextSibling.nodeValue; 
 
}).get(); 
 
console.log(arr);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> 
 
<i class="loc">cherry<br>From Shimla</i> 
 
<i class="loc">Apple<br>from kashmir</i> 
 
<i class="loc">banana<br>From bihar</i>

+0

dank arbeitet alot perfekt –

1
var arr = []; 

$('.loc').each(function(){ 
    arr.push($(this).html().split('<br>')[1]); 
}); 
console.log(arr); 

Sie können html() verwenden, teilen Sie es, verbessern und zweiten Wert verwenden aus dem Array.

var arr = []; 
 

 
$('.loc').each(function(){ 
 
    arr.push($(this).html().split('<br>')[1]); 
 
}); 
 
console.log(arr);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<i class="loc">cherry<br>From Shimla</i> 
 
<i class="loc">Apple<br>from kashmir</i> 
 
<i class="loc">banana<br>From bihar</i>

1
var arr = []; 

    $('.loc').each(function(){ 
     arr.push($(this).children('br').get(0).nextSibling); 
    }); 
console.log(arr); 
+0

Während dieser Code-Schnipsel, die Frage lösen kann, [einschließlich einer Erklärung] (http://meta.stackexchange.com/questions/114762/explaining Ganzheitliche Code-basierte Antworten helfen wirklich, die Qualität Ihres Posts zu verbessern. Denken Sie daran, dass Sie die Frage für Leser in der Zukunft beantworten, und diese Leute könnten die Gründe für Ihren Codevorschlag nicht kennen. – secelite

Verwandte Themen