【问题标题】:Passing Values to print only, pdf preview, or open in excel传递值以仅打印、pdf 预览或在 excel 中打开
【发布时间】:2017-07-14 01:56:53
【问题描述】:

我有两个报告:清单和位置。根据选择的报告决定采取何种路径的形式的操作。我还有一个选择,询问用户是否要自动打印、预览为 pdf 或在 excel 中打开。

<select name="Format" required>
    <option selected value="">Select Format</option>
    <option value="print">Print</option>
    <option value="pdf">Preview</option>
    <option value="xls">Excel</option>
</select>

我很好奇我应该如何转发这些信息,以便进行查询并处理用户请求的选择。我相信人们一直在做这样的事情。有人愿意分享任何例子或建议 - 让我走上正确道路的垫脚石吗?提前致谢!

下面标记的是我正在使用的所有可以用来实现这一目标的语言。

【问题讨论】:

  • 建议。认识到显示选项与让数据显示无关。无论最终显示是什么,您的查询都是一样的。
  • 那么您将如何在 CF Dan 中做到这一点?现在,我将表单操作转到 queries.cfm。两种不同的cfms。你会怎么把它绑在一起?将值通过 url 传递给新的 cfm,然后如何从查询页面路由?
  • 在两个页面中做同样的事情。运行查询并执行您必须执行的任何其他操作,而与显示无关。然后对显示选项做一些条件逻辑,并为每个选项编写适当的代码。如果两个页面有任何相同之处,请将公共代码放入包含的文件中。
  • 您有很多关于如何转发数据的选项,但我们不知道您的意思是要尝试将数据“转发”到不同的页面,还是服务器,或两者兼而有之?您是否同时使用 AJAX、CF?如果您要转发到不同的页面,那么只需在 url 中查询参数以发送您希望下一页具有的任何信息,例如foo?print=1,然后只需在下一页上查找这些参数的存在或不存在,并且然后,当需要将内容发送到服务器时,您可以将所有选项发布到服务器端点以进行典型处理。

标签: javascript jquery html coldfusion


【解决方案1】:

如果您只是想将数据发送到不同的页面,那么您可以为此使用查询参数。一种选择是在用户更新下拉列表时构建查询参数:

var select = $('select[name=Format]');

function buildUrl(option) {
  return 'some/endpoint?option=' + option;
}

select.change(function() {
  var value = $(this).val();
  var url = buildUrl(value);
  console.log('URL to call:', url);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<select name="Format" required>
  <option selected value="">Select Format</option>
  <option value="print">Print</option>
  <option value="pdf">Preview</option>
  <option value="xls">Excel</option>
</select>

然后您可以使用 JavaScript 或 CF 来检测查询参数的存在(或不存在)以满足您应用的要求。

希望这会有所帮助。

【讨论】:

    【解决方案2】:

    我曾尝试在我的报告中使用 pdfmake。它可以选择使用 Excel、打印或下载 pdf 生成报告。您所要做的就是传递一个 json 数组。你可以阅读 github 上的文档。这是链接:PDFMake

    这可能不是最好的答案,但它会成为你的垫脚石。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-07-25
      • 1970-01-01
      • 1970-01-01
      • 2023-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多