java - 如何创建动态选择选项

标签 java jsp jstl

嗨这个下拉菜单

<td class="selectBox"><select name="questionType" id="questionType" disabled=""><option value="">--Select--</option><option value="1"id="1">text</option><option value="2"id="2">rating</option><option value="3"id="3">boolean</option><option value="4"id="4">option</option></select></td> 

并使用 jSTL 动态创建

'<td class="selectBox"><select name="questionType" id="questionType" disabled=""><option value="">--Select--</option><c:forEach items="${questionTypes}" var="questionType"><option value="${questionType.id}"id="${questionType.id}">${questionType.name }</option></c:forEach></select></td>';

现在我想给一个值为 option 的下拉菜单提供一个“show-checkboxes”类 <option value="4"id="4" class="show-checkboxes">option</option>

所以我做了这个jSTL

'<td class="selectBox"><select name="questionType" id="questionType" disabled=""><option value="">--Select--</option><c:forEach items="${questionTypes}" var="questionType"><c:choose><c:when tes="${questionType.name.equals("option")}"><option class ="show-checkboxes" value="${questionType.id}"id="${questionType.id}">${questionType.name }</option></c:when><c:otherwise><option  value="${questionType.id}"id="${questionType.id}">${questionType.name }</option></c:otherwise></c:choose></c:forEach></select></td>';

但它不起作用

任何人都可以告诉我错误吗?

最佳答案

替换

<c:when tes="${questionType.name.equals("option")}">

<c:when test="${questionType.name eq \"option\"}">

或者

<c:when test="${questionType.name eq 'option'}">

您在双引号内使用双引号导致了问题。

在此处查找示例代码 JSTL Core c:when Tag

关于java - 如何创建动态选择选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23806180/

相关文章:

java - 无法解析 grails 2.3.7 中的 :spring-securty-core:2. 0-RC2

java - 在 Spring 安全中使用拦截 URL

jsp - 如何在 JSP 的自定义标记中使用 IntelliJ 语言注入(inject)

java - 重定向到同一个 jsp 时值丢失(没有 Ajax)

java - try ... catch 没有捕获 IllegalArgumentException

java - 在 Java 示例中使用 'For Loop'

java - 如何将多个模型属性添加到一个模型属性中?

java - JSTL 的 rt 和 el 版本有什么区别?

java - JSP 页面未读取提交的值

javascript - 如何使 JSTL 编写的元素的 id 可用于脚本编写?