Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring mvc 在下载完成之前是否可以禁用按钮?_Spring Mvc_Extjs_Extjs4 - Fatal编程技术网

Spring mvc 在下载完成之前是否可以禁用按钮?

Spring mvc 在下载完成之前是否可以禁用按钮?,spring-mvc,extjs,extjs4,Spring Mvc,Extjs,Extjs4,我正在尝试解决以下问题,但我找不到合适的解决方案: 在下载开始时禁用按钮(具有基础下载链接)(按钮单击一次),并在下载完成时再次启用按钮 我试着用谷歌搜索它,但甚至找不到有用的提示。这在一般情况下是可能的吗?3个可能的选项,您可能想看看 此链接可能对您很有用,您可以从以下位置开始: 其思想是使用cookie来定义文件的下载时间。理论上,您可以编写JavaScript来检测cookie,然后重新启用按钮。在这里可以找到检测JavaScript中cookie的好提纲: 另一个解决方案可能是看看这个

我正在尝试解决以下问题,但我找不到合适的解决方案:

在下载开始时禁用按钮(具有基础下载链接)(按钮单击一次),并在下载完成时再次启用按钮


我试着用谷歌搜索它,但甚至找不到有用的提示。这在一般情况下是可能的吗?

3个可能的选项,您可能想看看

  • 此链接可能对您很有用,您可以从以下位置开始:

    其思想是使用cookie来定义文件的下载时间。理论上,您可以编写JavaScript来检测cookie,然后重新启用按钮。在这里可以找到检测JavaScript中cookie的好提纲:

  • 另一个解决方案可能是看看这个问题:

    虽然这并不完全是你们想要的——新月新鲜的答案可能会被修改,以便在下载期间你们的按钮被禁用

  • 或者,一个快速但不雅观的解决方案是禁用下载按钮30秒到2分钟,以防止用户在文件下载时立即再次单击按钮-这是最不有效的,但它不考虑不同的下载速度等


  • 希望有帮助

    谢谢你Hollie3406!您的回答帮助我走上了正确的道路。尽管第一个链接看起来很旧,但这仍然是实现此功能的一个非常好(且简单)的方法。这花了大约15分钟,效果非常好。有几个提示可以让它变得更简单:1)使用js cookie库,它已经取代了服务器端的jQuery库()2)只需调用:HttpContext.Response.AppendCookie(新的HttpCookie(“fileDownloadToken”,model.fileDownloadToken));返回常规FileContentResult之前,即:返回文件(File.Data、mimeType、File.FileName);