javascript - 在输出到 HTML 之前计算数据中的列表项
问题描述
我有一个使用 ajax 返回的列表,看起来像这样......
console.log(data);
<ul><li>Item 1</li><li>Item 2</li><li>Item 3</li></ul>
我将它插入到这样的 HTML 元素中......
$("#output").html(data);
这工作正常,但我想在将列表项输出到元素之前计算列表项的数量。我尝试了以下方法,但它只是给了我字符数......
console.log(data.length);
我哪里错了?在输出 HTML 之前有没有办法做到这一点?
解决方案
您的数据只是一个字符串,因此您可以使用 jQuery 将其转换为 jquery 对象,然后li
从该对象中选择元素并获取长度。
const data = '<ul><li>Item 1</li><li>Item 2</li><li>Item 3</li></ul>'
const html = $(data);
console.log(html.find('li').length)
$("#output").html(html);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="output"></div>
推荐阅读
- python - 通过相同的数组扩展数组的数组间隔
- plsql - 如何在 Oracle19c 中使用整数变量声明 VARRAY 作为元素数
- excel - 协调列 VBA
- r - 当列名未知时,使用 dplyr 组合 data.frame 的列
- python-3.x - FastAPI 错误上传大于 100kb 的文件
- next.js - 在 nextjs 中使用 getServerSideProps 无限滚动
- nginx - 如何使用 NGINX 缓存 NextJS 10.0 图像
- python - 如何解码部分模糊的二维码?
- docker - gcloud submit:使用 --file 参数指定 Dockerfile 似乎不起作用
- java - 从单线程到多线程android studio