Grails使用gsp片段作为javascript函数的html模板

时间:2015-08-26 08:48:09

标签: javascript grails gsp

我尝试在我的应用程序上处理一对多的表单映射。

根据this post我创建了类似的代码:但是,我不想把我的html放在javascript中,我想要重复使用,所以我创建了一个小的taglib来处理一对多的关联。 此taglib接受表示输入字段行的gsp片段路径作为输入,如下所示:

<div class="form-group">
<div class="row row-product-option-values">
    <div class="col-md-3 col-sm-3">
        <g:textField name="product.options[<index>].name" class="form-control"></g:textField>
    </div>

    <div class="col-md-8 col-sm-8">
        <g:textField name="product.options[<index>].values" class="form-control"></g:textField>
    </div>
    <div class="col-md-1 col-sm-1">
        <a class="btn btn-link" type="button">
            <i class="fa fa-remove"></i>
        </a>
    </div>
</div>

在我的taglib里面我用这个片段用这个命令生成javascript html模板:

render(template: templatePath).replaceAll('\n', '').encodeAsJavaScript();

现在困难的部分:我需要替换一个js变量,我可以在每次添加新输入行时增加,但我无法弄清楚如何做到这一点。在过程结束时,我需要一个与此类似的字符串

"<div class=\"form-group\"> <div class=\"row row-product-option-values\"> <div class=\"col-md-3 col-sm-3\"> <input type=\"text\" name=\"product.options[" + childCount +"].name\" class=\"form-control\" value=\"\" id=\"product.options[0].name\" /> </div> <div class=\"col-md-8 col-sm-8\"> <input type=\"text\" name=\"product.options[0].values\" class=\"form-control\" value=\"\" id=\"product.options["+ childCount +"].values\" /> </div> <div class=\"col-md-1 col-sm-1\"> <a class=\"btn btn-link\" type=\"button\"> <i class=\"fa fa-remove\"></i> </a> </div> </div></div>";

有人知道如何完成这项任务吗?

感谢您的建议

卢卡

0 个答案:

没有答案