前言
昨天群里有人问typecho
的文章密码保护功能,提示密码错误时怎么发出弹窗式提醒,而非跳转到错误提示页面,我就随后说了个ajax
提交表单的方式,刚刚试了一下确实很可以的,代码如下。
代码
代码是基于JQ
的哈,没有JQ
可以自行引用下,或者将下方代码改为原生js
代码
$(".protected").submit(function() {
var surl=$(".protected").attr("action");//表单地址
$.ajax({
type: "POST",
url:surl,
data:$('.protected').serialize(),// 你的form
async:true,
error: function(request) {
alert("密码提交失败,请刷新页面重试!");//ajax提交失败报错
},
success: function(data) {
if(data.indexOf("密码错误") >= 0 && ((data.indexOf("<title>Error</title>") >= 0 && data.indexOf("<title>Error</title>") <= 100) || data.indexOf("Typecho_Widget_Exception") >= 0)) {
alert("密码错误,请重试!");//密码错误弹窗提醒
}else{
location.reload();//密码正确刷新页面
}
}
});
return false;
});
代码更新记录
2021年1月28日
密码判断部分优化,兼容typecho的debug模式,并且支持js代码写在行内。
2020年8月18日
发布第一版本。
版权属于:泽泽社长
本文链接:https://blog.zezeshe.com/archives/typecho-password-tixing.html
本站未注明转载的文章均为原创,并采用
CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢!
很强!