JQuery中function函数使用for,$.each,$().each遍历渲染数据时只能循环一次的问题

笔者正在尝试写一个简单的全栈漫画网站。

我试图使用ajax异步传输数据,接受到的List数据序列化后作为data取出,只经过一次查询,通过遍历的方式一次性地将不同属性的值渲染在不同标签下。

基本的逻辑如下,但是无法运行。

我尝试了许多方法,包括但不限于修改标点,使用不同形式的遍历语句,但是运行过程中只有第一次each会被执行。具体原因不详,我想可能是异步传输问题,或者jQuery的自动渲染导致的。

在此思想下,我开始尝试在一次each循环中执行三次渲染操作,最后成功。代码如下:

$.get("/mg/manga?method=mangaList",
        {"pageIndex": 0, "pageSize": 16},
        function (data) {
            let pic = eval(data.ts)
            $.each($('.blocks'), function (i) {
                $(this).find('.pic').prop('src', pic[i].picPath)
                $(this).find('.link').prop('href',pic[i].url)
                $(this).find('.name').html(pic[i].name)
                $(this).find('.cnt').html(pic[i].count)
                $(this).find('.scr').html(pic[i].score)
            })
        }, "json")

利用这种结构,理论上可以套用各种不同的循环遍历方式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值