【问题标题】:How do i use a variable value as the id of an HTML element on a gsp page?如何使用变量值作为 gsp 页面上 HTML 元素的 id?
【发布时间】:2019-08-26 18:14:55
【问题描述】:

我正在尝试动态设置 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="">

任何关于我做错了什么的想法都将不胜感激。

【问题讨论】:

  • 听起来很奇怪。它应该工作。你能把 h1 和 div 放在一起 each 并显示代码和结果吗?没有任何其他标签..

标签: html grails groovy gsp


【解决方案1】:

我在您的工作中找不到任何错误。我建议您在同一个视图(即 gsp 页面)中尝试以下 sn-p 并查看它是如何呈现的。

<g:each in="${1..3}" var="rn">
    <div id="${rn}">Test ${rn}</div>
</g:each>

如果代码运行正常,我认为你需要修改benifit.getId() 方法。您可以使用benefit.id 来查看它是否有任何不同。

【讨论】:

  • 感谢您的帮助。这是 benefit.getId() 方法。我没有正确处理其中一种情况,它返回 null,从而导致失败。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-02-26
  • 2013-11-15
  • 2021-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多