javascript - 向 c:set 或 ArrayList 添加双引号
问题描述
在 c:set 或 ArrayList 或 JavaScript 变量中的每个元素上附加双引号可能很简单的代码。
在 ac:set(包含母亲、婴儿等)之后,我填充了一个 ArrayList(然后包含 [母亲、婴儿、孩子、员工] 等),然后将其“获取”到 JavaScript 中。
最终输出是 [mother, child, staff] 等,但我需要它是 ["mother", "baby", "child", "staff"] 等
After a sql:select -
<c:set var="type" value="${row.Type}" />
Add to an ArrayList -
types.add(pageContext.getAttribute("type"));
Get into javascript (after the jstl forEach loop completes)-
var typesArray = [<% for (int i = 0; i < types.size(); i++) { %>"<%=types.get(i)%>"<%= i + 1 < types.size() ? ",":"" %><% } %>];
无法向 c:set 添加双引号,因为它会转义/失败 -
<c:set var="type" value=""${row.Type}"" />
我真的不想使用 StringBuffer,因为这会影响 JavaScript 获取迭代器,这需要我几天才能开始工作。
假设旧 Java / 旧 Javascript
想法赞赏。问候。拉尔夫
解决方案
使用单/双引号换行,
<c:set var="type" value="'${row.Type}'" />
或者
<c:set var="type" value='"${row.Type}"' />
相似地 ,
var typesArray = [<% for (int i = 0; i < types.size(); i++) { %>"'<%=types.get(i)%>'"<%= i + 1 < types.size() ? ",":"" %><% } %>];
或者
var typesArray = [<% for (int i = 0; i < types.size(); i++) { %>'"<%=types.get(i)%>"' <%= i + 1 < types.size() ? ",":"" %><% } %>];
推荐阅读
- python - 使用 ForeignKey 查询集的 Django OneToMany 关系
- javascript - 带标签的引导下拉多选
- x86 - PCIe 枚举后 BIOS 卡住
- python - 为什么 vim red 突出显示 Django 模板中的结束标签?
- r - R中Earth包中多元自适应回归样条的最大迭代次数
- javascript - 如何防止 url 链接打开新标签或直接访问?
- python - 我们应该关闭 botocore 的 StreamingBody 吗?
- python-3.x - 如何以矢量化方式将pytorch中单个矩阵的所有行乘以列
- python-3.x - Python - 如何对字典中具有相同值的键进行分组
- apache-spark - PySpark 加载不合适的模型对象时出现问题