如何在gsp页面上使用变量值作为HTML元素的ID?

时间:2019-04-04 21:36:52

标签: html grails groovy gsp

我正在尝试动态设置gsp页面上某些元素的ID值。当我渲染它时,值从控制器传递到页面。 但是,当我查看源代码时,未设置id的值。

我正在尝试执行以下操作:

<g:each in="${listBenefits}" var="benefit" status="i">
    <div class="card"  id="${benefit.getId()}">
...
</g:each>

但该值未插入ID中。

但是,我可以执行以下操作:

<h1>${benefit.getId()}</h1>

并显示该值。

我曾试图像这样使用它之前将值设置为变量

<g:set var="idaccordion" value="${benefit.getId()}" />
<div class="card"  id="${idaccordion}">

,也不起作用。

我期望得到这样的东西:

<div class="card"  id="desired_id">

相反,我得到了类似的东西

<div class="card"  id="">

任何关于我做错事情的想法都会受到赞赏。

1 个答案:

答案 0 :(得分:1)

我找不到您的工作中的任何错误。我建议您在同一视图(即gsp页面)中尝试以下代码段,并查看其呈现方式。

SELECT u.ID
FROM c_User u
WHERE EXISTS (
    SELECT 1
    FROM c_Group g 
    JOIN c_Member m ON g.Name = m.Parent_Name AND m.Child_Name = u.Lower_User_Name
    WHERE g.Group_Name LIKE 'mcp%'
)

如果代码正常运行,我认为您需要修改<g:each in="${1..3}" var="rn"> <div id="${rn}">Test ${rn}</div> </g:each> 方法。您可以使用benifit.getId()来查看它是否有任何区别。