首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >以当前用户时间作为文件名下载?

以当前用户时间作为文件名下载?
EN

Stack Overflow用户
提问于 2018-09-13 02:04:24
回答 1查看 0关注 0票数 0

简而言之

如何在下载文件时将文件名称包含用户的本地时间? 例:

代码语言:javascript
复制
<a href="/pizza.pdf" download="pizza-CURRENT-USER-TIME-HERE.pdf">Click here</a>

很久了

用户名字下载的下载怎么样?

使用PHP,我知道我可以echo将变量放入文件名中,如下所示:

PHP:

代码语言:javascript
复制
date_default_timezone_set('America/New_York');
$current_date = date('Y-F-j-h-i-s');

HTML:

代码语言:javascript
复制
<a href="/pizza.pdf" download="pizza-<?php echo $current_date; ?>.pdf">Click here</a>

或者,使用JavaScript,我可以在链接(或屏幕上的任何位置)打印用户的本地时间。

如何将用户的本地时间作为下载属性的值?

我愿意使用PHP,JS,JQuery等。

EN

回答 1

Stack Overflow用户

发布于 2018-09-13 11:17:24

您可以使用该onclick属性最简单地完成此操作。

代码语言:javascript
复制
<a href="/pizza.pdf" download="pizza-CURRENT-USER-TIME-HERE.pdf" onclick="this.download='pizza-' + getFormattedTime() + '.pdf'">Click here</a>

或者,如果您想使用Jquery:

在HTML中(添加一个id,我们可以选择):

代码语言:javascript
复制
<a href="/pizza.pdf" download="pizza-CURRENT-USER-TIME-HERE.pdf" id="download">Click here</a>

在JS中:

代码语言:javascript
复制
$("#download").click(function() {
    this.download= 'pizza-' + getFormattedTime() + '.pdf'
}

现在,当用户单击该链接时,下载名称将立即更改为当前时间。

这是一个如何获得时间的例子(很大程度上基于这个答案):

代码语言:javascript
复制
function getFormattedTime() {
    var today = new Date();
    var y = today.getFullYear();
    // JavaScript months are 0-based.
    var m = today.getMonth() + 1;
    var d = today.getDate();
    var h = today.getHours();
    var mi = today.getMinutes();
    var s = today.getSeconds();
    return y + "-" + m + "-" + d + "-" + h + "-" + mi + "-" + s;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100008856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档