如何在gsp

时间:2016-01-05 14:00:40

标签: html grails gsp

在我的groovy / grails应用程序中,我可以使用复选框获取我的列表(并感谢提示)。

但我似乎无法得到的是如何在多列中显示列表。

以下是我的gsp中的代码:

<ul class="columns" column-count="3">
        <g:each in="${name}" var="fileName">
               <g:checkBox checked="false" name="${ 'fileName'}"/> ${fileName <br>
        </g:each>
</ul>

我认为class =“ul class =”columns“column-count =”3“可以作为直接html工作,但我错了。我仍然得到一个(长)列表。

使用groovy标签或正确的html代码将此列表放入gsp中的多个列的正确方法是什么?

谢谢!

ironmantis7x

*****成功更新!!! *****

基于我接受的答案,这是我写的代码:

<style>
    .columns2 {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2; }
    </style>

        <ul class="columns2">
            <g:each in="${name}" var="fileName">
                 <g:checkBox checked="false" name="${ 'fileName'}"/> ${fileName}<br>
            </g:each> 
        </ul>   
    </div>

感谢帮派!你总是帮助我扩展我的知识基础,并在我喜欢做的事情和那个编程软件上取得更大的成功!

ironmantis7x

2 个答案:

答案 0 :(得分:1)

据我所知,column-count是一个CSS属性,而不是可以应用于ul标记的属性。您需要通过column-count或单独的css文件(由于SoC而首选的方式)定义style=

.columns {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
}

此外,您的ul标记中还有一个复选框输入列表。您应该有一个li(列表项)标签列表:

<ul class="columns">
    <g:each in="${name}" var="fileName">
       <li><g:checkBox checked="false" name="${ 'fileName' }"/> ${fileName} </li>
    </g:each>
</ul>

答案 1 :(得分:0)

gsp中的HTML代码生成与您编写的完全相同的html,将按原样发送到浏览器。因此,<ul class="columns" column-count="3">与浏览器中的<ul class="columns" column-count="3">相同。

但是您缺少列表元素,只放置一个多行(按分割)文本块。你可能想要这个:

<ul class="columns" column-count="3">
    <g:each in="${name}" var="fileName">
       <li><g:checkBox checked="false" name="${ 'fileName' }"/> ${fileName </li>
    </g:each>
</ul>

或者很可能是这个(因为你没有在你的代码中关闭}${ 'fileName'}没有任何意义。你也不应该把值放在是,它的潜在安全漏洞):

<ul class="columns" column-count="3">
    <g:each in="${name}" var="fileName">
       <li><g:checkBox checked="false" name="${fileName.encodeAsHTML()}"/> ${fileName.encodeAsHTML()}</li>
    </g:each>
</ul>