浏览器如何发送ajax请求,浏览器关闭时,发送ajax请求

本文探讨了在用户关闭浏览器时,利用Ajax发送最后的保存草稿请求的技术。通过JavaScript监听`window.onbeforeunload`事件并在事件触发时调用函数。然而,测试结果显示该方法在Safari浏览器中不支持,其他浏览器则正常工作。代码示例展示了如何实现这一功能,并在表单提交时避免重复触发请求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

浏览器关闭时,发送ajax请求

发布于:2018.11.12 - 13:10

当用户在浏览器关闭时,向服务器后台发送ajax请求。代码如下。

测试结果:Safari浏览器不支持,其余浏览器支持。

if ($("#new-post").length > 0 && $("#new-post input[name='_post_post_id']").length > 0) {

function my_sava_auto_draft() {

var post_id = $("input[name='_post_post_id']").val();

$.ajax({

type: "POST",

datatype: 'json',

async: false, //异步执行设置为 false 否则浏览器刷新时不会执行

url: ajaxurl,

data: {

'post_id': post_id,

'action_name': '_my_save_auto_draft',

'action': 'my_action',

}

});

}

window.onbeforeunload = function(e) {

my_sava_auto_draft();

}

$("form").on("submit", function() {

// window.onbeforeunload = null;

});

}

赞赏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值