2017-09-17 115 views
0

JS传递结果从功能到其他功能

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>

我需要得到DIV的每个元素的值,并传递给twoFunc。 但是在twoFunc结果中只有值的最后一个输出(3)。 我请求帮助理解我的错误。 预先感谢所有不冷漠的人。

+0

每个人都在试图解决您的代码,但我会推荐阅读更多的文档。你的片段中有很多误解。 –

+1

谢谢你的答复。我会阅读更多关于JS的规则。 – Makhnov

回答

2

,需要在每个结果添加到一个数组:

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

谢谢你的回答。你真的很好。 – Makhnov

+0

如果这回答你的问题,请选择它作为正确的答案 – Nayish