2017-09-19 87 views
0

我用<g:set>标签是这样的:<g:set>变量的值不被渲染正确

<g:set var="extraStyle" value="style='min-width:120px;'"/> 

和使用extraStyle变量是这样的:

<div class="myClass" ${extraStyle}> ${myValue}</div> 

它应该呈现作为:

<div class="myClass" style="min-width:120px;"> XYZ </div> 

但是,我得到这个:

<div class="myClass" style="'min-width:120px;'"> XYZ </div> 

由于其中,未施加最小宽度的风格。我在这里做错了什么?

的Grails版本:3.1.6

+0

逃逸''':'' – injecteer

+1

什么发生如果删除单引号。值=“风格=最小宽度:120像素;” – Djamware

+0

@Djamware令人惊讶的是,删除单引号的工作。 :) – sgiri

回答

2

你可以尝试只设置样式值如

<g:set var="extraStyle" value="min-width:120px;"/> 

<div class="myClass" style="${extraStyle}"> ${myValue}</div> 
+0

这个工程,但如果我不得不使用条件,这将失败。例如,对于某些条件,如果我不想使用“min-width = 120px”,则div将被渲染为:“

XYZ
”。无论如何感谢您的解决方案。 :) – sgiri

2

我觉得小李的答案是正确的,虽然我不知道你的项目的情况下,我认为它可能从长远来看是更好的动态添加类的元素。

喜欢的东西

<div class="myClass ${extraClass}">...</div>