You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Bootstrap复选框选中值组成的数组结果逐行展示用于打印

解决方案

你遇到的问题核心有两点:

  1. 直接将数组传入.text()方法时,会默认调用数组的toString()方法,输出逗号拼接的纯文本
  2. .text()方法会将所有传入内容当做纯文本处理,即使插入<br>也只会显示为普通字符,不会解析为换行标签

你可以任选以下两种方案修改:

方案1:用HTML标签实现换行

修改你的jQuery代码中给#results_after赋值的部分即可:

$("#results_message").text("The results are:");
$("button").on("click", function () {
 var array = [];
 $("input:checkbox[name=type]:checked").each(function () {
   array.push($(this).val());
 });
 // 原来的text()换成html(),数组用<br>拼接
 $("#results_after").html(array.join('<br>'));
 $('#results_after').printThis();
});

方案2:用CSS控制换行(安全性更高,避免XSS风险)

先修改jQuery赋值部分:

// 用换行符拼接数组,仍然用text()赋值
$("#results_after").text(array.join('\n'));

再给#results_after的CSS规则新增一行属性:

#results_after {
  color: green;
  font-size: 24px;
  font-weight: bold;
  visibility: hidden;
  white-space: pre-line; /* 新增这行,让文本识别换行符 */
}

额外优化提示

你当前HTML中两个复选框使用了重复的id="flexCheckDefault",不符合HTML规范,会导致点击label时无法正确触发对应复选框的选中状态,建议修改为不同的ID,同时对应修改label的for属性。


内容的提问来源于stack exchange,提问作者mjb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 02:54:04