首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用javascript each()对数据进行排序

如何使用javascript each()对数据进行排序
EN

Stack Overflow用户
提问于 2017-05-27 07:29:41
回答 1查看 55关注 0票数 1

我有带有数据库数据的html代码。我需要通过AJAX更新这些数据,这样用户就可以在不刷新页面的情况下获得新的汇率。这是Laravel刀片模板:

代码语言:javascript
复制
@foreach ($currencies as $currency)
    <div class="currency-{{ $currency->id }}">
        <div class="cur-id">{{ $currency->id }}</div>
        <div class="cur-name">{{ $currency->cur_name }}</div>
        <div class="cur-sell">{{ $currency->cur_sell + 0 }}</div>
        <div class="cur-buy">{{ $currency->cur_buy + 0 }}</div>
    </div>
@endforeach

加载页面后-它有实际的数据,但是在1分钟后刷新该数据,所以我每分钟发出一个AJAX请求:

代码语言:javascript
复制
$.ajax({
    type: 'GET',
    url: '/ajax-currencies',
    dataType: 'json',
    success: function (data) {
        $.each(data, function(index, element) {
            $('.currency-+element.id+.cur-sell').text(element.cur_sell);
        });
    }
});

使用json对象的“/ajax-通货”响应。如何将每个具有其值的对象放入其中以更正div - currency-1 (有自己的值)、currency-2 (有自己的值)等,所以如下所示:

代码语言:javascript
复制
<div class="currency-1">
  <div class="cur-id">1</div>
  <div class="cur-name">Bitcoin</div>
</div>

<div class="currency-2">
  <div class="cur-id">2</div>
  <div class="cur-name">Ethereum</div>
</div>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-27 07:44:26

我不知道你为什么要分类。如果您的div有特殊的类,那么您可以通过这些类找到div并直接在这些div中插入数据。你已经试着这么做了,但不对。您的each回调应该是:

代码语言:javascript
复制
function(index, element) {
    $('.currency-' + element.id + ' .cur-sell').text(element.cur_sell);
    // alternative version     
    //$('.currency-' + element.id).find('.cur-sell').text(element.cur_sell);
}

请参阅,我将element.id从引号中移出,因为javascript不能解析引用字符串中的变量。

我还在选择器中的类之间添加了一个空间,因为像.class1.class2这样的选择器将尝试在应用了的两个类中查找项,这是您不想要的。

另外,我还使用find()方法添加了替代选择器。举个例子。

现在,选择器应该选择正确的div。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44214199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档