Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.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
Javascript 单击按钮前刷新_Javascript_Html_Button - Fatal编程技术网

Javascript 单击按钮前刷新

Javascript 单击按钮前刷新,javascript,html,button,Javascript,Html,Button,我正在试图弄清楚如何在函数showX()运行之前立即使用单击进行刷新。我尝试过使用分号,例如location.reload();showX()但是代码没有运行。这个极其简单的函数变得非常复杂。我到处都找过了,但到目前为止运气不好 <div align="center"><button onclick="location.reload();"> <strong>Refresh</strong> Before Select </button>

我正在试图弄清楚如何在函数showX()运行之前立即使用单击进行刷新。我尝试过使用分号,例如location.reload();showX()但是代码没有运行。这个极其简单的函数变得非常复杂。我到处都找过了,但到目前为止运气不好

<div align="center"><button onclick="location.reload();"> <strong>Refresh</strong> Before Select </button>

<div align="center"><button id="b1" onclick="showX(2)"> 178-0416-00 </button>
选择前刷新 178-0416-00
当您使用重新加载方法时,页面将丢失所有引用,并且不会执行ShowX

您需要使用类似于coockie或查询字符串的东西来标记页面的状态,并使用类似于JQuery的方法

$(document).ready(函数(){})


你能告诉我你想做什么吗?有了这个,我们可以帮助您提出一些解决问题的建议

您可以向查询中添加一个GET参数,这样,如果该参数存在,函数showX将在文档完全加载后立即执行


这不是一个优雅的解决方案,但这是因为您的请求本身非常不寻常。

要在刷新完成后运行函数,可以:

 window.onload =  function showX()
                     {
                  //Rest of code
                     }

window.onload
是一种在页面加载时不用按钮就可以运行函数的好方法

我可以通过稍微不同的方式回答自己的问题。我决定使用一个按钮点击计数器,如下所示。我有8个按钮,所以我对每个按钮都这样做。如果我在第一次加载代码时单击任何按钮。如果我按下相同或任何其他按钮,它将重新加载页面。它需要两次点击,但它仍然摆脱了我的另一个刷新按钮,人们可能需要点击

谢谢大家的意见。我本来会选择cookies路径,但我真的不希望每个人都必须启用cookies,因为cookies被禁用了

var count = 1;
document.getElementById('b1').onclick = function() {
   location.reload();
};

为什么在执行函数之前需要重新加载页面?根据需要,您可以简单地将refresh调用添加到
showX()
。查看使用jQuery的解决方案仔细想想,刷新页面时会发生什么。它是重新加载的,对吗?您在上一页上拥有的所有内容都将消失(包括脚本和HTML、激发事件等),页面将重新解析和呈现,从头开始……您心中有一个解决方案,“在页面重新加载后运行showX proc”,但您试图通过此操作解决的实际问题是什么?也许有更好的方法。第一次按下按钮时,说“showX(1)”它会配置文档。当按下另一个“showX(2)”时,将打开第二个文档。不幸的是,这两个文档合并在一起,因此需要刷新。也许某种卸载也可以代替刷新。您认为如何调用Ajax函数来代替重新加载页面。这样,您将拥有所有控制权,并且可以随时调用“showX”。