gpt4 book ai didi

grails - 如何在grails导出插件的export:formats元素中的params属性上设置值

转载 作者:行者123 更新时间:2023-12-02 15:14:25 25 4
gpt4 key购买 nike

我已经安装了grails导出插件。它具有元素export:formats,该元素采用params值作为属性。我想知道如何将其他元素的值设置到此params属性上,以便 Controller 操作可以使用它。

<div id="exportDetail">
<g:select name="reportType" from="${['Daily', 'Weekly Hour', 'Weekly Day']}" ></g:select><br/>
<g:datePicker name="reportStartDate" precision="hour"></g:datePicker><br/>
<g:datePicker name="reportEndDate" precision="hour"></g:datePicker><br/>
<export:formats action="exportRollup" formats="['csv', 'excel', 'ods', 'pdf', 'rtf', 'xml']" params="[**how to pass select, datepicker stuff here to controller**]"/>
</div>

最佳答案

您提供给taglib的参数只会影响Grails呈现的链接。如果您希望链接包含页面渲染后会更改的参数(例如,日期选择器选择的值),则需要使用Javascript。这是一个粗糙的例子:

 $('.menuButton a').click(function() {
var target = this.href + '&reportStartDate=' + $('#reportStartDate').val();
window.location.href = target;
return false;
});

理想情况下,您的导出按钮将提交包含日期选择器的表单,并且您无需使用Javascript。为此,您必须编写自己的格式taglib。这将帮助您入门:
  • 在您的项目中创建一个新的taglib。将其命名为namespace = 'export',以便它可以覆盖插件的标签。将formats标记从ExportTagLib复制到新的taglib。
  • <a>标记更改为提交按钮:input(type: 'submit', name: 'format', value: format)
  • 如果需要图形按钮,请改用此按钮:input(type: 'image', name: 'format', value: format, src: g.resource(plugin: 'export', dir: 'images/skin', file: format + '.png'))
  • 您现在将在GSP中的<form>标记周围需要一个<export:formats>标记。

  • 您将无法再在 Controller 中使用 params.extension,但是从格式中找出文件扩展名并不难。

    关于grails - 如何在grails导出插件的export:formats元素中的params属性上设置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6211905/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com