如果下载开始,Jquery可以刷新页面吗?

时间:2016-10-26 04:48:03

标签: javascript php jquery html

我有一个用户选择checkbox的应用程序, 按下按钮download并根据复选框下载数据, 问题是如果我没有检查任何checkbox,它会在error提醒中显示div条消息。 当我检查并单击下载时,下载运行良好,但错误消息仍在页面中。 如何检测下载是否开始,页面自动刷新或如何更容易地解决?

我的下载代码:

  public function downloadFile($name)
  { 
    $storagePath = "/opt/tmp/";

    // check filename for allowed chars (do not allow ../ to avoid security issue: downloading arbitrary files)

    if (!is_file("$storagePath/$name")) {
        throw new \yii\web\NotFoundHttpException('The file does not exists.');
    }
    return Yii::$app->response->sendFile("$storagePath/$name", $name);
  }

我如何使用jquery进行检测下载启动并刷新它?

2 个答案:

答案 0 :(得分:3)

单击复选框后,您需要立即隐藏错误消息。 像这样的东西 $( “#ID”)隐藏();

此处id是错误消息div的ID

答案 1 :(得分:1)

您可以在客户端点击下载链接时检测下载开始。

发送请求之前!

这样的事情:

$('#download-link').on('click', function() {
    setTimeout(function() {
        document.location.reload();
    }, 500);
    return true;
});