首页 > 其他分享 >#yyds干货盘点# react笔记之学习之处理表单数据

#yyds干货盘点# react笔记之学习之处理表单数据

时间:2022-12-17 18:32:05浏览次数:57  
标签:yyds const target 触发 对象 value 表单 react

前言

我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷 微信公众号前端小歌谣

#yyds干货盘点# react笔记之学习之处理表单数据_表单

处理表单数据核心代码

import React from 'react';
import Card from "../UI/Card/Card";
import './LogsForm.css';

const LogsForm = () => {

/*
* 当表单项发生变化时,获取用户输入的内容
* */
// 创建三个变量,用来存储表单中的数据
let inputDate = '';
let inputDesc = '';
let inputTime = 0;


// 创建一个响应函数,监听日期的变化
const dateChangeHandler = (e) => {
// 获取到当前触发事件的对象
// 事件对象中保存了当前事件触发时的所有信息
// event.target 执行的是触发事件的对象(DOM对象)
//console.log(e.target.value);
inputDate = e.target.value;
};

// 监听内容的变化
const descChangeHandler = (e) => {
// 获取到当前触发事件的对象
// 事件对象中保存了当前事件触发时的所有信息
// event.target 执行的是触发事件的对象(DOM对象)
//console.log(e.target.value);
inputDesc = e.target.value;
};

//监听时长的变化
const timeChangeHandler = (e) => {
// 获取到当前触发事件的对象
// 事件对象中保存了当前事件触发时的所有信息
// event.target 执行的是触发事件的对象(DOM对象)
//console.log(e.target.value);
inputTime = e.target.value;
};

// 当表单提交时,汇总表单中的数据
/*
* 在React中,通常表单不需要自行提交
* 而是要通过React提交
* */
const formSubmitHandler = (e) => {
// 取消表单的默认行为
e.preventDefault();
// 获取表单项中的数据日期、内容、时长
// 将数据拼装为一个对象
const newLog = {
date: new Date(inputDate),
desc: inputDesc,
time: +inputTime
};

console.log(newLog);

};

return (
<Card className="logs-form">
<form onSubmit={formSubmitHandler}>
<div className="form-item">
<label htmlFor="date">日期</label>
<input onChange={dateChangeHandler} id="date" type="date"/>
</div>
<div className="form-item">
<label htmlFor="desc">内容</label>
<input onChange={descChangeHandler} id="desc" type="text"/>
</div>
<div className="form-item">
<label htmlFor="time">时长</label>
<input onChange={timeChangeHandler} id="time" type="number"/>
</div>
<div className="form-btn">
<button>添加</button>
</div>
</form>
</Card>
);
};

export default LogsForm;

标签:yyds,const,target,触发,对象,value,表单,react
From: https://blog.51cto.com/u_14476028/5949978

相关文章

  • vue2中使用react组件
    参考:https://blog.csdn.net/Claire_cz/article/details/125257392​ https://www.jianshu.com/p/933d3961f9f2按照https://blog.csdn.net/Claire_cz/article/details......
  • #yyds干货盘点# LeetCode程序员面试金典:化栈为队
    题目:实现一个MyQueue类,该类用两个栈来实现一个队列。示例:MyQueuequeue=newMyQueue();queue.push(1);queue.push(2);queue.peek(); //返回1queue.pop(); //返回......
  • #yyds干货盘点# 名企真题专题:小招喵跑步
    1.简述:描述小招喵喜欢在数轴上跑来跑去,假设它现在站在点n处,它只会3种走法,分别是:1.数轴上向前走一步,即n=n+1 2.数轴上向后走一步,即n=n-1 3.数轴上使劲跳跃到当前点的两倍,......
  • 【HTML基础篇002】HTML之form表单超详解
    ......
  • #yyds干货盘点#前端性能优化
    浏览器渲染流程解析HTML文件,构建DOM树,同时浏览器主进程负责下载CSS文件CSS文件下载完成,解析CSS文件成树形的数据结构,然后结合DOM树合并成RenderObject树布局R......
  • #yyds干货盘点# LeetCode程序员面试金典:堆盘子
    题目:堆盘子。设想有一堆盘子,堆太高可能会倒下来。因此,在现实生活中,盘子堆到一定高度时,我们就会另外堆一堆盘子。请实现数据结构SetOfStacks,模拟这种行为。SetOfStacks应该由......
  • 高仿京东Android App,集成React-Native热更
    简介本项目是一个学习类型的项目,主要是为了学习一些Android最新的思路和开发思想,工程按照模块化、组件化的开发思路进行开发,项目整体结构如下图。项目代码整洁规范,结构清晰,......
  • 企业级自定义表单引擎解决方案(十八)--列表视图属性设置
    表格对于后台管理类的系统来说,至关重要,系统大多数功能都需要以表格的方式展示业务内容,系统开发人员多数时间也是围绕着表格进行业务编码,接触过很多后台管理系统的框架,我个......
  • React Native V0.64.4版本 开发环境搭建及问题
    一、开发环境依赖安装 必须安装的依赖有:Node、Watchman、Xcode和CocoaPods。brew安装及问题:苹果电脑标准安装脚本:/bin/zsh-c"$(curl-fsSLhttps://gitee.com/cu......
  • HTML(表单重点)
    HTML超文本标记语言—HyperTextMarkupLanguageW3C标准W3C:WorldWideWebConsortiumW3C标准包括:结构化标准语言(HTML,XML)表现标准语言(CSS)行为......