为了账号安全,请及时绑定邮箱和手机立即绑定

调用函数后使用 Jquery 和 php 重新加载当前页面

调用函数后使用 Jquery 和 php 重新加载当前页面

qq_花开花谢_0 2022-10-21 14:31:22
我试图在用户按下按钮后通过 Jquery 重新加载这个 php 的当前页面。按下按钮后调用该函数isset($_POST['submitGenZip']),但 Jquery 无法运行其重新加载页面的功能。该函数isset($_POST['submitGenZip'])仅用于下载文件(这是 php 所做的)。它不会重定向到任何页面。第一页.php<?phpif(isset($_POST['submitGen']))    {        header('Location:Generate.php');          }?><!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  <title>Zip Files</title>  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>  <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" />.........<tr>            <form action="" method="post" role="form">                <td>                    <input type="submit" name="submitGen" class="btn btn-primary" value = "GenerateZ" style="float: right;">                </td>            </form></tr>......</body></html><script>$(document).ready(function(){    $("#submitGen").click(function(){        alert("ReloadThisPage");    });});</script> 
查看完整描述

3 回答

?
胡说叔叔

TA贡献1804条经验 获得超8个赞

您可以使用多种方法加载您的页面或任何其他页面。

您不必使用PHP重新加载当前页面或位置。您可以直接使用jQuery或使用 JS。

使用 location.reload()

您可以使用在事件location.reload();中重新加载您的页面click

阅读更多关于location.reload 这里

使用 window.open()

window.open('Generate.php')如果您想在窗口中打开 URL,也可以使用 这将有所帮助。

使用 window.location

window.location = 'Generate.php'如果您想在同一窗口中打开 URL,您也可以使用 这将有所帮助。

运行下面的代码片段以查看它的工作原理。

$(document).ready(function() {

  $("#submitGen").click(function() {

    alert('Page will reload now')

    location.reload();

  });

});

<!DOCTYPE html>

<html>


<head>

  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  <title>Zip Files</title>

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>

  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

  <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" /> ... ... ...

  <tr>

    <form action="" method="post" role="form">

      <td>

        <input type="submit" name="submitGen" id="submitGen" class="btn btn-primary" value="GenerateZ" style="float: right;">

      </td>

    </form>

  </tr>

  ... ...

  </body>


</html>


查看完整回答
反对 回复 2022-10-21
?
森林海

TA贡献2011条经验 获得超2个赞

用户“AlwaysHelping”帮助我解决了这个问题。但是我想发布一个替代解决方案。也就是说,当用户从服务器下载文件时,发送的请求有时比预期的要慢,Jquery 函数在同一个实例中运行,并且永远不会下载文件。所以我在刷新页面之前在 Jquery 中保持了 5 秒的延迟。


<script>

$(document).ready(function() {

  $("#submitGen").click(function() {

    window.setTimeout(function () {

        location.href = "FirstPage.php";

    }, 5000);

  });

});

</script>


查看完整回答
反对 回复 2022-10-21
?
呼唤远方

TA贡献1856条经验 获得超11个赞

您可以使用HTML onclick 事件属性

<input type="submit" onclick="location.reload()" name="submitGen" class="btn btn-primary" value = "GenerateZ" style="float: right;">



查看完整回答
反对 回复 2022-10-21
  • 3 回答
  • 0 关注
  • 150 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信