我有一个页面,其中包含一个复选框和指向第A页的链接。
我点击复选框, 我点击链接, 转到第A页, 点击浏览器后退按钮, 回来
我仍然看到复选框已选中,但未清除。
我使用了正确的缓存控制标头,如下所示。
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-store, no-cache
Expires: 0
另外,试过这个:
document.body.onunload = function(){};
document.body.onpageshow = function(evt) {
if (evt.persisted) {
document.body.style.display = "none";
location.reload();
}
};
在chrome和safari(桌面)中没有任何作用
适用于IE,Firefox,移动设备和Safari。
请帮忙。
答案 0 :(得分:0)
这似乎与Why does the checkbox stay checked when reloading the page?
的问题相同对我有用的是将func application(_ application: UIApplication, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
if shortcutItem.type == "Micheal-Smith.Pathfinder-Society.charLog"
{
let sb = UIStoryboard(name: "Main", bundle: nil)
let charLog = sb.instantiateViewController(withIdentifier: "CharacterLog") as! CharactersTableViewController
let root = UIApplication.shared.keyWindow?.rootViewController
root?.present(charLog, animated: false, completion: {
completionHandler(true)
})
}
else if shortcutItem.type == "Micheal-Smith.Pathfinder-Society.gmTools"
{
let sb = UIStoryboard(name: "Main", bundle: nil)
let charLog = sb.instantiateViewController(withIdentifier: "gmTools") as! UITabBarController
let root = UIApplication.shared.keyWindow?.rootViewController
root?.present(charLog, animated: false, completion: {
completionHandler(true)
})
}
}
添加到页面上的表单元素中。