我正在努力解决每个循环。我想要实现的是匹配相应的对象来纠正每次迭代。
我的小提琴。在每个div中有相同的输出,它应该是1,2,3而不是3,3,3。
jQuery('.get-total-numbers').each(function(i, e) {
var $el = jQuery(e);
var json = '["1","2","3"]';
var arr = $.parseJSON(json);
myjson = json;
json2 = JSON.parse(json);
jQuery.each(json2, function(index, e) {
console.log(e);
$el.text(e);
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="get-total-numbers">
</div>
<div class="get-total-numbers">
</div>
<div class="get-total-numbers">
</div>
&#13;
答案 0 :(得分:2)
试试这个:
jQuery('.get-total-numbers').each(function(i, e) {
var $el = jQuery(e);
var json = '["1","2","3"]';
var arr = $.parseJSON(json);
myjson = json;
json2 = JSON.parse(json);
$el.text(json2[i]);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="get-total-numbers">
</div>
<div class="get-total-numbers">
</div>
<div class="get-total-numbers">
</div>
&#13;
答案 1 :(得分:1)
您的代码只是用数组的每个元素覆盖每个DIV,而不仅仅是将匹配元素放在每个DIV中。
您不需要内部jQuery.each
循环。如果您想要数组的相应元素,只需使用arr[i]
。
var json = '["1","2","3"]';
var arr = $.parseJSON(json);
jQuery('.get-total-numbers').each(function(i, e) {
var $el = jQuery(e);
$el.text(arr[i]);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="get-total-numbers">
</div>
<div class="get-total-numbers">
</div>
<div class="get-total-numbers">
</div>
&#13;