<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>HTML5</title> <script type="text/javascript"> /*联系人数据*/
function Person(username,mobile,qq) {
this.username = username;
this.mobile = mobile;
this.qq = qq;
} /*增加联系人*/
function add() {
var username = document.form1.username;
var mobile = document.form1.mobile;
var qq = document.form1.qq; //判断联系人姓名是否已经存在
if ( checkUsername(username.value) ) {
alert('联系人已存在');
return;
} var p = new Person(username.value,mobile.value,qq.value);
var jsonStr = JSON.stringify(p); localStorage.setItem(p.username,jsonStr);
alert('联系人增加成功');
} /*修改联系人*/
function update() {
var username = document.form1.username;
var mobile = document.form1.mobile;
var qq = document.form1.qq; //判断联系人姓名是否已经存在
if ( !checkUsername(username.value) ) {
alert('联系人不存在');
return;
} var p = new Person(username.value,mobile.value,qq.value);
var jsonStr = JSON.stringify(p); localStorage.setItem(p.username,jsonStr);
alert('联系人修改成功');
} /*删除联系人*/
function del() {
var username = document.form1.username; //判断联系人姓名是否已经存在
if ( !checkUsername(username.value) ) {
alert('联系人不存在');
return;
} localStorage.removeItem(username.value);
alert('联系人删除成功');
} /*查询联系人*/
function queryByUsername() {
var username = document.form1.username;
var jsonObj = checkUsername(username.value); if (jsonObj) {
document.form1.mobile.value = jsonObj.mobile;
document.form1.qq.value = jsonObj.qq;
} else {
alert('联系人不存在');
}
} /*判断联系人是否存在,存在返回数据,不存在返回null*/
function checkUsername(usernameStr) {
var username = document.form1.username; for (var i = 0; i < localStorage.length;i ++) {
var key = localStorage.key(i);
var jsonStr = localStorage.getItem(key);
var jsonObj = JSON.parse(jsonStr); if (jsonObj.username == usernameStr)
return jsonObj;
} return null;
}
</script> </head> <body>
<form name="form1" method="post" action="">
<table width="500" border="1" cellpadding="5" cellspacing="0">
<tr>
<td colspan="2" align="center" bgcolor="#FFFF00">通讯录</td>
</tr>
<tr>
<td width="80" align="center">姓名</td>
<td width="204"><input type="text" name="username" id="username"></td>
</tr>
<tr>
<td align="center">手机号码</td>
<td><input type="tel" name="mobile" id="mobile"></td>
</tr>
<tr>
<td align="center">QQ号码</td>
<td><input type="number" name="qq" id="qq"></td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="button" name="button" id="button" value="增加到联系人" onClick="add();">
<input type="button" name="button2" id="button2" value="查询联系人" onClick="query();">
<input type="button" name="button4" id="button4" value="修改联系人" onClick="update();">
<input type="button" name="button3" id="button3" value="删除联系人" onClick="del();">
<input type="reset" value="清空">
</td>
</tr>
</table>
</form>
</body>
</html>

  

最新文章

  1. go reflect
  2. 调用c++接口类
  3. 变量在SSIS包中的使用
  4. 如何做好APP测试?
  5. centos7 Linux 安装mysql
  6. 20145215实验三 敏捷开发与XP实践
  7. python False
  8. CCNA第二讲笔记
  9. C#运行时鼠标移动控件 - 调用Windows API(ReleaseCapture)
  10. [Angular 2] Using the @Inject decorator
  11. Gstreamer 中的playback插件
  12. python---连接MySQL第四页
  13. Windows Linux的cmd命令查询指定端口占用的进程并关闭
  14. Jenkins可持续集成项目搭建——配置Jenkins基本设置 &amp; 运行脚本报错点
  15. Java 详解 JVM 工作原理和流程
  16. laravel调度任务
  17. [原创]STM32 BOOT模式配置以及作用
  18. AngularJS双向绑定,手动实施观察
  19. [译]Unity3D内存管理——对象池(Object Pool)
  20. Oracle约束详解

热门文章

  1. 【Mongodb教程 第三课 】MongoDB 删除数据库
  2. shutdown abort模式丢失redo,使用隐含參数启库
  3. extjs grid 列顺序紊乱问题
  4. 2016/04/13 ①html 中各种分割线------------------------------------------ ② 控制文字显示
  5. (八)Java 修饰符
  6. SSH三大框架整合配置详细步骤(1)
  7. Form content types
  8. set 去重 会 破坏 原有list 的元素相对位置
  9. accp
  10. idea项目文件名为红色的解决办法