javascript - 将 div 包装到 javascript 输出
问题描述
基本上我需要做的是包装这个代码输出
<a id="show_selected">Click to Show</a>
<div id="selected"></div>
<script type="text/javascript">
function showSelect(){
$("#show_selected").bind("click", function (e) {
e.preventDefault();
$('#selected').text($("#fvip").mapster("get"));
});
}
showSelect();
</script>
现在很简单
<div id="selected">001,002,003,004</div>
成为
<div="selected">
<div class="something">001</div>
<div class="something">002</div>
<div class="something">003</div>
<div class="something">004</div>
</div>
我怎样才能做到这一点?那可能吗?非常感谢
在 brk 的帮助下进行编辑:
我尝试将它合并到我的代码中,如下所示:
function showSelect(){
$("#show_selected").bind("click", function (e) {
e.preventDefault();
$('#selected').text($("#fvip").mapster("get"));
let wrapContainer = ""
let stringArray = $("#selected").text().trim().split(' ');
$("#selected").empty()
stringArray.forEach(function(item, index) {
let wrapContainer = $('<div class="test">' + item + '</div>');
$("#selected").append(wrapContainer)
});
});
}
showSelect();
但我得到的是:
<div id="selected">
<div class="test">001,002,003,004</div>
</div>
我在哪里做错了?
解决方案
您可以获取文本并将其拆分。然后循环并将其放入 div 中。然后将 div 附加到父元素
let wrapContainer = ""
let stringArray = $("#original").text().trim().split(' ');
$("#original").empty()
stringArray.forEach(function(item, index) {
let wrapContainer = $('<div class="test">' + item + '</div>');
$("#original").append(wrapContainer)
});
.test {
color: green
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="original">001 002 003 004</div>
推荐阅读
- r - 如何为 bquote 传递一串符号以在 ggplot 中进行评估?
- javascript - 当一个光滑的网格标题被截断时
- linux - 如何为特定的 Linux 内核编译用户空间应用程序?
- reactjs - React:如何优化一键创建和销毁 200 个元素?
- python - 如何从 MODIS 瓦片的角创建像素坐标网格?
- reactjs - 无法访问嵌套对象,但可以从 API 渲染非嵌套对象(使用 React 挂钩)
- jquery - 按 .attr 测验选择
- django - /admin/login/ 'request' 处的 KeyError
- javascript - 单击更改线性渐变背景
- python-3.x - 错误 ModuleNotFoundError:运行 Python 代码时没有名为“api”的模块