2017-09-17 1 views
0

JS passieren Ergebnis von Funktion zu anderer Funktion

function oneFunc(elemDiv) { 
 
    $('div.test').each(function() { 
 
    elemDiv = $(this).text(); 
 
    }); 
 
    return elemDiv; 
 
} 
 

 
function twoFunc() { 
 
    var fromOneFunc = oneFunc(); // I need to get 1,2,3 to here. But resalt is only last element - (3). 
 
    $('span.get_text').each(function() { 
 
    $(this).text(fromOneFunc); // I am trying for everyone to assign value of ** span ** from ** div **. But its do not work. 
 
    }) 
 
}
<div class="test"> 1 </div> 
 
<div class="test"> 2 </div> 
 
<div class="test"> 3 </div> 
 

 
<span class="get_test"> 1 </span> 
 
<span class="get_test"> 2 </span> 
 
<span class="get_test"> 3 </span>

Ich brauche Wert jedes Element von DIV zu erhalten und weitergeben zu twoFunc. Aber in twoFunc Ausgabe von Ergebnis nur letzte von Element des Wertes (3). Ich bitte um Hilfe zu verstehen, dass mein Fehler. Vielen Dank im Voraus für alle, die nicht gleichgültig sind.

+0

Jeder versucht, den Code zu beheben, aber ich würde empfehlen, ein bisschen mehr Dokumentation zu lesen. Es gibt viele Missverständnisse in Ihrem Snippet. –

+1

Vielen Dank für Ansver. Ich werde mehr Regeln über JS lesen. – Makhnov

Antwort

2

Sie müssen jede der Ergebnisse zu einem Array hinzuzufügen:

function oneFunc(){ 
    var elems = []; 
    $('div.test').each(function(){  
    elems.push($(this).text()); 
    }); 
    return elems; 
} 

function twoFunc(){ 
    var fromOneFunc = oneFunc(); // I need to get 1,2,3 to here. But resalt is only last element - (3). 
    $('span.get_text').each(function(a, i){ 
    $(this).text(fromOneFunc[i]); // I am trying for everyone to assign value of ** span ** from ** div **. But its do not work. 
    }) 
} 
+0

Vielen Dank für die Antwort. Du bist wirklich ein guter Mann. – Makhnov

+0

Wenn dies Ihre Frage beantwortet, wählen Sie sie bitte als richtige Antwort aus – Nayish