如何防止代码在 JQuery 插件完成保存 cookie 之前执行
How to prevent code from executing before a JQuery plugin is finished saving a cookie
我有以下名为 HowTo 的函数,它与 onclick 事件一起执行,其中的一个函数需要 JQuery 插件 jquery.cookie,即:">一个简单、轻量级的 jQuery 插件,用于读取、写入和删除 cookie。
function HowTo(){
$largeAmountOfHTML = document.getElementById("element").innerHTML;
$.cookie("nameOfCookie", $largeAmountOfHTML);
$.ajax({
type: "GET",
url: "path/to/serverside/script.php",
async:false,
});
window.location.href='anotherPage.php';
};
该函数首先检索大量 HTML 并将其分配给变量 $largeAmountOfHTML。然后使用在jquery.cookie库中声明的JQuery函数$.cookie((,该函数将$largeAmountOfHTML的值保存到cookie名称OfCookie。然后该函数进行AJAX调用,该调用执行服务器端php脚本,该脚本检索cookie数据并将内容保存到MYSQL数据库。完成后,该函数将当前窗口定向到另一个页面.php。
该函数运行平稳,未声明控制台错误。但是,当$largeAmountOfHTML达到一定大小时,jquery.cookie 无法在服务器端脚本尝试检索之前足够快地分配 cookie。jquery.cookie没有列出我可以用来防止这种情况发生的任何方法。
一旦$largeAmountOfHTML足够大并且无法及时保存到 cookie 中,severside 脚本就会声明此错误:
<br />
<b>Notice</b>: Undefined index: nameOfCookie in <b>localhost/path/to/serverside/script.php</b> on line <b>4</b><br />
解决这个问题的最佳方法是什么?
不会延迟完成工作吗?然后只需调用 delay 回调中的服务器端代码即可。
相关文章:
- 按下按钮时保存cookie
- 如何在Javascript中将单选按钮值保存到cookie中
- Cookie 在 Spotify (Javascript) 中调用 ajax 后未保存
- 单击时将类添加到 ancer 标签并使用 cookie 保存
- Javascript 不会保存 cookie
- 大规模保存cookie的最佳方式是什么
- 如何将jQuery克隆的文本输入保存到cookie或html5存储中
- Cookie,用于保存包括一个变量在内的多个值
- 在js中有一个cookie保存序列化的svgs
- Cookie 保存/读取无法按预期工作
- 如何在 javascript 的信息窗口中使用 cookie 保存复选框状态
- Javascript使用javascript按钮更改CSS页面,并根据cookie保存
- jquery:使用cookie保存拖放位置
- 在网页中使用javascript中的cookie保存用户选择的背景图像
- 表单值在提交后作为cookie保存&页面更改
- jQuery-切换元素并用cookie保存
- 在实现cookie保存状态到JQuery切换时遇到麻烦
- 如何在游戏中使用cookie保存分数?
- NPM tough-cookie:保存一个cookie,然后转储它
- Javascript cookie保存和加载