nodejs获取表单数据的三种方法实例

 更新时间:2021年06月02日 12:06:40   作者:yun_shuo  
在开发中经常需要获取form表单的数据,这篇文章主要给大家介绍了关于nodejs获取表单数据的三种方法,方法分别是form表单传递、ajax请求传递以及表单序列化,需要的朋友可以参考下

前言

nodejs作为服务端语言,在开发中注册登录等需通过form表单向后端发送数据进行判断,那作为服务端语言的nodejs通过哪些方法可以接收调用form表单的post请求值呢。

常见的会用到以下三种,让我们对着例子看看具体用法。

后端我们使用express插件,需要对express有所了解的才便于阅读哦~

1、首先npm初始化,下载express包,导入模块后创建服务对象

//导入express模块
const express = require("express");
// 创建服务器对象
const app = express();

form表单传递

这种通过from表单的特性,可以点击表单中button的type为submit的按钮,会提交表单数据。形式是以一种对象方式,属性名为input标签中name值,属性值为input标签value值,下面例子来看看具体写法。

<form action="/todata" method="POST">
        <table>
            <tr>
                <td>姓名</td>
                <td> <input type="text" name="user" id=""></td>
            </tr>
            <tr>
                <td>密码</td>
                <td> <input type="text" name="password" id=""></td>
            </tr>
            <tr>
                <button type="submit">提交</button>
            </tr>
        </table>
</form>

由于表单提交是post请求,在后端nodejs代码中需要对post请求数据接收需要做解析响应头的处理app.use(bodyParser.urlencoded({ extended: false })),然后用req.body来表示前端传递过来的数据。具体后端代码如下。

const express = require("express");
const app = express();
app.use(express.static("./"))
var bodyParser = require('body-parser')
//  解析 application/x-www-form-urlencoded响应头
app.use(bodyParser.urlencoded({ extended: false }))
app.post("/todata",(req,res)=>{
    console.log(req.body);
    res.send("提交成功")
})
app.listen("80",()=>{
    console.log("成功");
})

通过终端运行node代码,来看看结果

ajax请求传递

在向后端发送请求时,常用到get、post请求,同样,表单的数据可以通过ajax以post请求发送数据给后端。以上面例子为基础,该方法的前端代码如下。

	 $("#inp3").on("click",function(){
        let user = $("#inp1").val();
        let password = $("#inp2").val();
        $.ajax({
        url:"todata",
        type:"post",
        data:{
            user,
            password
        },
        success:(data)=>{
            alert(data)
        }
         })
    })

这里,我们将两个input的值获取到,然后绑定提交按钮的提交按钮进行ajax请求发送,发送给后端的数据存储在data属性中。后端同样通过req.body获取到。这里需要特别注意的是form表单不需要写action值,表单中button按钮需要阻止默认行为(不然会点击直接发送请求导致ajax请求会失败),或是用input标签type为button类型。

表单序列化

这种发送是表单提交的常用方法,它也是通过ajax发送请求,也可以将name属性作为发送后端的属性名直接发送。可以说是以上两种方法的结合。

		$("#inp3").on("click",function(){
        $.ajax({
        url:"todata",
        type:"post",
        data:$("form").serialize(),
        success:(data)=>{
            alert(data)
        }
         })
    })

只需要通过$(“form”).serialize()这个方法,就能获取含name属性值。

总结

到此这篇关于nodejs获取表单数据的文章就介绍到这了,更多相关nodejs获取表单数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • NodeJS学习笔记之MongoDB模块

    NodeJS学习笔记之MongoDB模块

    nodejs是个强大的平台,有基本功能,而且可以挂很多模块。我们现在需要和mongodb连接的驱动,就类似比如mysql的java驱动一样。nodejs有好几个mongodb的第三方驱动。和jdbc不一样,没有标准。所以需要到驱动的网站上去了解学习怎么使用它访问mongodb。
    2015-01-01
  • Node.js API详解之 console模块用法详解

    Node.js API详解之 console模块用法详解

    这篇文章主要介绍了Node.js API详解之 console模块用法,总结分析了Node.js API中console模块基本函数、使用方法与操作注意事项,需要的朋友可以参考下
    2020-05-05
  • Node.js同时安装多个版本及相关配置指南(简单易操作)

    Node.js同时安装多个版本及相关配置指南(简单易操作)

    在实际开发过程中我们可能需要安装多个版本的 nodejs,下面这篇文章主要给大家介绍了关于Node.js同时安装多个版本及相关配置的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • NodeJS链接MySql数据库的操作方法

    NodeJS链接MySql数据库的操作方法

    下面小编就为大家带来一篇NodeJS链接MySql数据库的操现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • 详细分析Node.js 模块系统

    详细分析Node.js 模块系统

    这篇文章主要介绍了Node.js 模块系统的的相关资料,文中讲解非常详细,供大家参考和学习,感兴趣的朋友可以了解下
    2020-06-06
  • 轻松创建nodejs服务器(3):代码模块化

    轻松创建nodejs服务器(3):代码模块化

    这篇文章主要介绍了轻松创建nodejs服务器(3):代码模块化,本文是对第一节的例子作了封装,需要的朋友可以参考下
    2014-12-12
  • 详解Node.js一行命令上传本地文件到服务器

    详解Node.js一行命令上传本地文件到服务器

    这篇文章主要介绍了Node.js一行命令上传本地文件到服务器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • Nodejs使用Mongodb存储与提供后端CRD服务详解

    Nodejs使用Mongodb存储与提供后端CRD服务详解

    这篇文章主要给大家介绍了关于Nodejs使用Mongodb存储与提供后端CRD服务的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-09-09
  • node.js使用express-fileupload中间件实现文件上传

    node.js使用express-fileupload中间件实现文件上传

    本文使用express作为服务端,使用express-fileupload库提供的中间件函数来接受从客户端传来的图片,并将图片作为文件存储在服务端,感兴趣的可以了解一下
    2021-07-07
  • Koa2中间件的作用及路由实现实例详解

    Koa2中间件的作用及路由实现实例详解

    这篇文章主要介绍了Koa2中间件的作用及路由实现实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05

最新评论