【ajax基础04】form-serialize插件

目录

一:form-serialize插件

作用:

语法格式:

一:form-serialize插件

作用:

快速且大量的收集表单元素的值

例如上图对于多表单元素的情形,单靠通过"选择器获取节点.value"值的形式,获取表单元素的值。在操作上、代码量上,非常的不简洁、且麻烦。form-serialize插件就很好的解决了这个问题

语法格式:

javascript 复制代码
const form = document.querySelector('...要获取的表单元素')
serialize(form,{hash:true,empty:true})
//hash 设置获取数据结构
// true:获取的数据为JS对象,一般请求体里提交给服务器
//false:获取的数据为查询字符串


//empty 设置是否获取空值
//true:获取空值,可以保证数据结构和标签结构一致
//false:不获取空值
javascript 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>13.form-serialize插件使用</title>
</head>

<body>
    <form action="javascript:;" class="example-form">
        <input type="text" name="uname">
        <br>
        <input type="text" name="pwd">
        <br>
        <input type="button" class="btn" value="提交">
    </form>
    <!-- 
    目标:在点击提交时,使用form-serialize插件,快速收集表单元素值
  -->
    <!-- 1 将插件引入网页 -->
    <script src="./form-serialize.js"></script>
    <script>
        document.querySelector('.btn').addEventListener('click', () => {
            // 2 使用serialize函数,快速收集表单元素的值
            const form = document.querySelector('.example-form')
            const data = serialize(form, { hash: true, empty: true })
            console.log(data);
        })
    </script>
</body>

</html>

注意:

  1. html表单元素中设置name属性的属性值,会作为serialize函数收集数据后,返回对象中的属性名
  2. html表单元素中name的属性值,要与后端接口文档参数名要求的一致
相关推荐
wuxia21181 小时前
微信小程序单击元素切换元素的显示和隐藏
javascript·微信小程序·setdata
JustHappy1 小时前
古法编程秘籍(二):什么是代码模块化?别背概念,把房间收拾明白就够了
前端·后端
小江的记录本2 小时前
【JVM虚拟机】堆内存分代模型:年轻代(Eden+Survivor)、老年代、元空间Metaspace(附《思维导图》+《面试高频考点清单》)
java·前端·jvm·后端·python·spring·面试
weixin_471383032 小时前
图片预解码缓存
前端·浏览器缓存·图片预解码
一起学开源2 小时前
一文读懂 ReAct 范式:让 AI Agent 真正学会“思考+行动“
java·javascript·react.js·ecmascript·react·alibaba·智能体开发
郑洁文4 小时前
基于网络爬虫的Web敏感信息泄露自动化检测工具
前端·爬虫·网络安全·自动化
游九尘4 小时前
JavaScript 实现三段式版本号对比函数(app升级用)
javascript·uni-app
zhiSiBuYu05174 小时前
Claude-Code 新手极速上手指南
javascript·node.js
郑洁文4 小时前
可视化Web渗透分析工具的设计与实现
前端
罗超驿4 小时前
18.Web API 实战:元素与表单属性的获取和修改
开发语言·前端·javascript