grails渲染模板没有正确响应

时间:2016-06-13 20:42:54

标签: ajax grails

我正在使用grails 2.4.3。我有一个ajax调用来获取对象列表。清单没问题。它有10个元素。问题是,当我想用​​模型发送列表时,它的行为不正确。 g中没有生成任何内容:我的模板中的每个块都有,但我有10条记录。有人可以帮我这个吗?以下是我的尝试::

我的ajax电话>>>

$.ajax({
        type:'POST',
        data:{id: 1},
        url:'/mdNote/getCareTopicTemplate/',
        success:function(data,textStatus){
            $modal.find('.modal-body').empty().append(data);
            $modal.find('.modal-title').empty().append(cfg.title);
            $modal.modal('show');
        },
        error:function(XMLHttpRequest,textStatus,errorThrown){},
        complete:function(XMLHttpRequest,textStatus){}
    });

我的控制器操作>>>

def getCareTopicTemplate() {
    def careTopicList = mdNoteService.careTopicList()
    render(template: '/md/patient/existingTemplateRadioDiv', model: [careTopicList: careTopicList])
}

我的模板>>>

<div class="row" id="existingTemplateRadioDiv">
    <div class="form-group" style="margin-left: 10px;">
        Hello , this is outer text.
        <g:each in="${careTopicList}" var="careTopicList" status="i">
            this is inner text.
        </g:each>
    </div>
</div>

我在IDE控制台中的列表&gt;&gt;&gt;

enter image description here

在渲染模板&gt;&gt;&gt;

之后的视图页面中

enter image description here

1 个答案:

答案 0 :(得分:1)

您需要在var标记中更改您提供的名称<g:each>。你告诉它使用你已经迭代过的同一个变量careTopicList。像下面这样的东西应该可以解决问题。

<g:each in="${careTopicList}" var="careTopic" status="i">