【前端学习笔记】利用iframe实现表单的无刷新提交案例
2024-08-24 20:06:27
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<iframe name="formsubmit" id="myFrame" style="display: none"></iframe>
<!-- 将form表单提交的窗口指向隐藏的ifrmae,并通过ifrmae提交数据。 -->
<form action="./login" method="POST" name="forphp" target="formsubmit">
<p>
<label for="uname">用户名:</label>
<input type="text" name="uname" id="uname"/>
</p>
<p>
<label for="pwd">密 码:</label>
<input type="password" name="pwd" id="pwd"/>
</p>
<p>
<input type="submit" value="登录" id="sub"/>
</p>
</form>
</body>
</html>
<script>
var form = document.getElementsByTagName('form')[0];
var frame = document.getElementById('myFrame'); function callback(a,b){
var uname = document.getElementById('uname').value;
var pwd = document.getElementById('pwd').value;
if(uname == a && pwd == b ){
alert('登录成功');
form.reset();
}
else{
alert('账号密码错误');
}
}
frame.addEventListener('load',function(event){
try{
var result = JSON.parse(frame.contentWindow.document.body.textContent);
// 识别登录结果
if (result.code === 200){
callback(result.result.uname,result.result.psw);
}
}catch(er){
//ignore
}
}
);
</script>
./login文件内容
{
"code": 200,
"result":{
"uname":"admin",
"psw":"test"
}
}
最新文章
- 爬取https页面遇到“SSLError: hostname &#39;xxx&#39; doesn&#39;t match either of”的解决方法
- Emphasis on Filtering &; Depth Map Occlusion Filling
- java的Spring
- JDK1.7新特性
- 洛谷P2733 家的范围 Home on the Range
- 用CAS操作实现Go标准库中的Once
- Linux下解决高并发socket最大连接数所受的各种限制(解除IO限制)
- some logo.
- JAVA GUI学习 - JMenuBar菜单条、JMenu菜单、JMenuItem菜单项组件学习
- hdu1033
- js中字符串转换为日期型
- vue2.0 组织机构树形选择组件(类似elementui <;el-transfer>; 与 <;el-tree>; 两个标签的结合)
- onload和DOMContentLoaded
- PHP自动加载SPL的四种处理方式
- 哈勃(Hubble)望远镜的新发现
- 登陆sharepoint的主页,提示:文件存在(异常来自 HRESULT:0x80070050)
- linux下如何挂接(mount)光盘镜像文件、移动硬盘、U盘、Windows网络共享和NFS网络共享
- C# Lock关键字
- 前端框架---jQuery---一分钟下载使用
- hdu1242 Rescue DFS(路径探索题)