如何在 select 上使用 jquery... 几秒钟后刷新页面?
how to refresh a page on select using jquery... after a few seconds?
一直在为此苦苦挣扎,如果能在正确的方向上提供任何帮助或推动,我将不胜感激...
我有一个带有 select 的下拉栏,它可以在带有 ajax 的页面上拉取结果...唯一的问题是它复制了拉入的结果。但是,如果加载结果后页面有一个硬刷新,这是我想用 jquery...
模拟的
基本上,我希望这样,只要用户加载 "selected",它就会加载页面的结果,并在一秒左右后硬刷新 window。
这是我正在尝试使用的代码,但它不起作用:
已编辑尝试 -
<script type="text/javascript">
jQuery(document).ready(function($) {
$('.filter').change(function(){
setTimeout(function(){
location.reload(true);
},5000); // here 5000 is the delay of 5s
});
});
</script>
哪位好心人能给我指引正确的方向吗?
select 标签下拉列表的 html 如下所示:
<select class="filter">
<option value="#">-- All --</option>
<option id="select-denver" value="denver"
selected="selected">Denver</option>
<option id="select-laramie-wyoming" value="laramie-wyoming">Laramie,
Wyoming</option>
</select>
非常感谢您的帮助。
要立即触发页面重新加载,您可以使用 window.location.reload(true)
. If you want this to happen after a delay, specify it as the callback to window.setTimeout()
:
window.setTimeout(() => window.location.reload(true), delay);
其中 delay
是重新加载前等待的时间长度。注意这个函数是非阻塞的;它之后的代码将继续执行,直到计时器用完并且页面重新加载。
您打开的范围没有正确关闭。请先关闭它们。并尝试下面的代码片段。
注意:这个问题回答了很多次。
Difference between setTimeout with and without quotes and parentheses
$(document).ready(function(){
$('.filter').change(function(){
setTimeout(function(){
location.reload(true);
},5000); // here 5000 is the delay of 5s
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select class="filter">
<option value="#">-- All --</option>
<option id="select-denver" value="denver"
selected="selected">Denver</option>
<option id="select-laramie-wyoming" value="laramie-wyoming">Laramie,
Wyoming</option>
</select>
一直在为此苦苦挣扎,如果能在正确的方向上提供任何帮助或推动,我将不胜感激...
我有一个带有 select 的下拉栏,它可以在带有 ajax 的页面上拉取结果...唯一的问题是它复制了拉入的结果。但是,如果加载结果后页面有一个硬刷新,这是我想用 jquery...
模拟的基本上,我希望这样,只要用户加载 "selected",它就会加载页面的结果,并在一秒左右后硬刷新 window。
这是我正在尝试使用的代码,但它不起作用:
已编辑尝试 -
<script type="text/javascript">
jQuery(document).ready(function($) {
$('.filter').change(function(){
setTimeout(function(){
location.reload(true);
},5000); // here 5000 is the delay of 5s
});
});
</script>
哪位好心人能给我指引正确的方向吗?
select 标签下拉列表的 html 如下所示:
<select class="filter">
<option value="#">-- All --</option>
<option id="select-denver" value="denver"
selected="selected">Denver</option>
<option id="select-laramie-wyoming" value="laramie-wyoming">Laramie,
Wyoming</option>
</select>
非常感谢您的帮助。
要立即触发页面重新加载,您可以使用 window.location.reload(true)
. If you want this to happen after a delay, specify it as the callback to window.setTimeout()
:
window.setTimeout(() => window.location.reload(true), delay);
其中 delay
是重新加载前等待的时间长度。注意这个函数是非阻塞的;它之后的代码将继续执行,直到计时器用完并且页面重新加载。
您打开的范围没有正确关闭。请先关闭它们。并尝试下面的代码片段。
注意:这个问题回答了很多次。 Difference between setTimeout with and without quotes and parentheses
$(document).ready(function(){
$('.filter').change(function(){
setTimeout(function(){
location.reload(true);
},5000); // here 5000 is the delay of 5s
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select class="filter">
<option value="#">-- All --</option>
<option id="select-denver" value="denver"
selected="selected">Denver</option>
<option id="select-laramie-wyoming" value="laramie-wyoming">Laramie,
Wyoming</option>
</select>