_09_json_练习.html 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <form action="">
  9. 账号 : <input type="text" id="username" name="username"> <br>
  10. 密码: <input type="password" id="password" name="password">
  11. <!-- type: button submit
  12. button : 无动作按钮需要配合时间去处理
  13. submit: 点击按钮就会提交表单
  14. -->
  15. <input type="button" onclick="login()" value="登录" >
  16. <input type="button" onclick="handlerResp()" value="处理">
  17. </form>
  18. </body>
  19. <script>
  20. /**
  21. * 提交登录界面
  22. * 有账号有密码还有一个登录按钮
  23. * 当点击登录按钮 需要把账号和密码信息封装到一个js 对象中
  24. *
  25. * 最后把js 对象转成json 字符串
  26. */
  27. function login(){
  28. // 获取用户输入账号和用户输入密码
  29. var username = document.getElementById("username").value
  30. var password = document.getElementById("password").value
  31. var obj = {username: username,password: password}
  32. // 把js 对象-> json 字符串
  33. console.log(JSON.stringify(obj));
  34. }
  35. /**
  36. * 假设点击登录, 后台给前台返回了一段json数据格式
  37. * {
  38. * success: true,
  39. * msg: "登录成功"
  40. * }
  41. *
  42. * 我们需要处理后端给前端返回数据
  43. * json-> js 对象
  44. * 根据js 对象success 属性判断此次操作是成功还是失败
  45. */
  46. function handlerResp(){
  47. /**
  48. * 判断输入账号和输入密码如果等于admin 密码等于123
  49. * '{"success":true,"msg":"登陆成功"}'
  50. * 如果不等于
  51. * '{"success":false,"msg":"密码错误"}'
  52. * @type {string}
  53. */
  54. var username = document.getElementById("username").value
  55. var password = document.getElementById("password").value
  56. var objJson = ""
  57. if(username == "admin" && password == "123"){
  58. objJson = '{"success":true,"msg":"登陆成功"}'
  59. }else{
  60. objJson = '{"success":false,"msg":"账号密码错误"}'
  61. }
  62. // 需要把后端返回给我们数据转成js 对象
  63. var obj =JSON.parse(objJson)
  64. if(obj.success){
  65. alert("登录成功")
  66. }else{
  67. alert("登录失败")
  68. }
  69. }
  70. </script>
  71. </html>