【问题标题】:Loop in render view在渲染视图中循环
【发布时间】:2017-04-17 14:51:15
【问题描述】:

伙计们,我需要调用一个执行循环以多次呈现模板的操作。我还需要更新包含模板的元素。我怎样才能做到这一点。我已经尝试过了,但是模板没有出现,并且包含模板的元素没有更新。下面,我的代码。谢谢。

def myAction(){

    def i = 0;
    while(i<5){
        i++;
        render template:"console", model:[dado:dado]
    }
}

【问题讨论】:

  • 与其尝试多次渲染整个模板,不如拆分需要重复的部分并将其包装在 gsp 中的&lt;g:each&gt; 中,然后将该部分渲染为模板?

标签: ajax grails view


【解决方案1】:

问题不清楚,但如果您需要在视图上重复模板多次,请尝试以下代码:

def myAction(){
   //instantiating dado
   [dado: dado]
}

视图(假设应该放在/controllerName/myAction.gsp):

<g:each in="${(0..4)}">
     <g:render template="console" model="${[dado: dado]}"/>
</g:each>

【讨论】:

    【解决方案2】:

    如果你使用ajax,你可以用html标签传递数据。

    def myAction(){
            render template:"console", model:[dado:dado]
    }
    

    现在可见,

    $.ajax({
    url:<controller/action>,
    data:data,
    success:function(data){
    for(var i =0; i<5;i++)
        $(slectedDiv).html(data);
    }
    }
    });
    

    【讨论】:

      猜你喜欢
      • 2012-07-13
      • 2014-07-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多