在Jquery's .unload已弃用的情况下,取消提交按钮文本设置的正确方法
Correct way to unset submit button text now that Jquery's .unload is deprecated
SETUP -大型搜索与许多条件作为POST通过html提交按钮,它可能需要几秒钟前第一个字节发送到服务器/结果页面开始加载。
http://api.jquery.com/unload/现在已弃用(从1.8版本开始),我正在寻找执行以下操作的正确方法…
当有人点击搜索按钮时,我通过将按钮文本设置为"Searching…"来给用户一点反馈,然后允许提交继续(返回true):
$('#dosearch').click(function() {
$(this).html('<i class="icon-spinner icon-spin"></i> Searching...');
return true;
});
在卸载过程中,我正在做这个:
$(window).unload(function() {
$('#dosearch').html('<i class="icon-search"></i> Search');
});
我尝试绑定到beforeunload,但它会在提交发生时触发(坏),而不是在浏览器开始呈现新页面时触发(好)。
问题是,如果他们点击搜索,然后点击返回按钮在他们的浏览器。如果他们这样做,那么搜索…文本仍然显示。
什么是正确的/适当的方法来做我在这里尝试的?注意:(I标记的原因是我使用了awesome字体)
绑定一个空事件处理程序来卸载似乎有效,但这是一种hack。
$('#dosearch').click(function() {
$(this).html('<i class="icon-spinner icon-spin"></i> Searching...');
return true;
});
$(window).on("load", function(){
$('#dosearch').html('<i class="icon-search"></i> Search');
});
$(window).on("unload", function(){
// Leave this blank handler here or onload won't fire on IE or FF when you click back button
});
如果用户回到历史,这意味着它呈现的页面是新的还是不新的?因此,无论何时加载页面,您都可以将该值重置为您想要的值。
会是什么吗?
相关文章:
- 使用按钮和单选按钮提交表单,但始终使用相同的值
- 使用回车按钮提交文本框表单
- 清除按钮提交后的文本区域
- 单击按钮提交输入字段值
- 我可以从 Rails 4 中的按钮提交传递参数吗?
- 如何使用inputtype=按钮提交表单
- 使用两个按钮(提交按钮和普通按钮),它们应该以不同的方式提交相同的表单
- 使用jquery UI next按钮提交输入字段值,php将返回结果
- AJAX-按钮提交以更新表单
- 在向导表单中使用按钮提交值的最佳方式
- 如何阻止按钮提交
- 使用提交按钮提交表单,而不是页面上的其他按钮
- 用于两个功能的Javascript按钮.提交&单击
- 如何使用一个提交按钮提交三个表单
- 如何使用按钮提交表单
- 如何查看从 javascript 中的表单按钮提交调用的 php 文件中的回显
- 不能在按钮提交处理程序中使用变量
- 由多个按钮提交的一个模式引导表单
- 为什么<输入类型=“按钮”>提交表单
- 使用表单外的按钮提交表单