首页 > 其他分享 >表单元素

表单元素

时间:2024-11-12 12:19:20浏览次数:1  
标签:示例 URL 元素 表单 提交 action

HTML表单是网页中用户输入数据的主要方式,包含多种元素,每个元素都有不同的用途。下面是HTML中常见的表单元素以及它们的用途和常用实例:

1. <form>

表单的容器元素,所有表单元素必须放在<form>标签内。

示例:

<form action="/submit" method="post">
    <!-- 表单元素放在这里 -->
</form>

2. <input>

<input>是最常见的表单元素,类型可通过type属性定义,支持多种输入方式。

常用type属性值:

  • text:单行文本框
  • password:密码框
  • radio:单选框
  • checkbox:复选框
  • file:文件上传
  • submit:提交按钮
  • reset:重置按钮
  • email:电子邮件输入框
  • number:数字输入框

示例:

  • 文本输入框

    <input type="text" name="username" placeholder="Enter your username">
    
  • 密码框

    <input type="password" name="password" placeholder="Enter your password">
    
  • 单选框radio【小圆图案】

<input type="radio" name="gender" value="male"> Male
<input type="radio" name="gender" value="female"> Female
/*相同的name属性只可以选一个 */
  • 复选框

    <input type="checkbox" name="subscribe" value="newsletter"> Subscribe to newsletter
    
  • 提交按钮

    <input type="submit" value="Submit">
    
  • 重置按钮

    <input type="reset" value="Reset">
    
  • 文件上传

    <input type="file" name="profile_picture">
    

3. <textarea>

多行文本输入框,允许用户输入多行文字。

示例:

<textarea name="message" rows="4" cols="50" placeholder="Enter your message"></textarea>

4. <select><option>

<select>定义下拉菜单,<option>定义下拉菜单中的各个选项。

示例:

<select name="country">
    <option value="usa">United States</option>
    <option value="canada">Canada</option>
    <option value="china">China</option>
</select>

5. <button>

定义一个按钮,type属性可以控制按钮的功能(如提交表单、重置表单等)。

示例:

<button type="submit">Submit</button>
<button type="reset">Reset</button>
<button type="button" onclick="alert('Button clicked')">Click Me</button>

6. <label>

<label>元素定义表单控件的标签,通常与<input>元素一起使用,以提高表单的可用性和可访问性。

示例:

<label for="username">Username:</label>
<input type="text" id="username" name="username">

7. <fieldset><legend>

<fieldset>用于将表单元素分组,而<legend>为该组提供标题。可以增加表单的可读性和结构性。

示例:

<fieldset>
    <legend>Personal Information</legend>
    <label for="name">Name:</label>
    <input type="text" id="name" name="name">
    <label for="email">Email:</label>
    <input type="email" id="email" name="email">
</fieldset>

8. <datalist>

<datalist>提供一组预定义的选项,用于与<input>元素搭配使用,允许用户输入与选项匹配的值。

示例:

<input list="browsers" name="browser" id="browser">
<datalist id="browsers">
    <option value="Chrome">
    <option value="Firefox">
    <option value="Safari">
    <option value="Edge">
</datalist>

9. <input type="date">, <input type="time">, <input type="datetime-local">

这些输入类型允许用户输入日期、时间或日期和时间。

示例:

  • 日期输入

    <input type="date" name="dob">
    
  • 时间输入

    <input type="time" name="meeting_time">
    
  • 日期和时间输入

    <input type="datetime-local" name="event_datetime">
    

10. <input type="range">

允许用户选择一个数字范围,通常会显示一个滑动条。

示例:

<label for="volume">Volume:</label>
<input type="range" id="volume" name="volume" min="0" max="100" value="50">

11. <input type="tel">

允许用户输入电话号码。它在移动设备上尤其有用,会调出数字键盘。

示例:

<input type="tel" name="phone" placeholder="Enter your phone number">

12. <input type="url">

允许用户输入URL地址,浏览器可能会进行简单的验证(如检查格式)。

示例:

<input type="url" name="website" placeholder="Enter your website URL">

13. <input type="search">

用于创建一个搜索框,通常带有搜索图标。

示例:

<input type="search" name="search" placeholder="Search">

14. <input type="color">

允许用户选择颜色,通常显示为一个颜色选择器。

示例:

<input type="color" name="favcolor" value="#ff0000">

15. <input type="month">

允许用户选择一个特定的年份和月份。

示例:

<input type="month" name="event_month">

16. <input type="week">

允许用户选择一个特定的年份和周。

示例:

<input type="week" name="week_of_year">

常见表单属性:

  • name: 为表单元素指定名称(在提交表单时传递数据)。
  • value: 为输入元素指定默认值或选中的选项。
  • placeholder: 为输入框提供占位符文本。
  • required: 指定该字段为必填项。
  • disabled: 禁用表单元素,使其无法交互。
  • readonly: 只读,用户不能修改输入框的内容。
  • maxlength: 限制输入框可以输入的最大字符数。

表单提交:

  • action: 表单数据提交的目标URL
  • method: 数据提交方式,常见值有GETPOST
    //这get和post的区别实在form表单环境下

1. get是从服务器上获取数据,post是向服务器传送数据。 2. get是把参数数据队列加到提交表单的ACTION属性所指的URL 中,值和表单内各个字段一一对应,在URL中可以看到。post是通 过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到 这个过程。 3. 对于get方式,服务器端用Request.QueryString获取变量的值, 对于post方式,服务器端用Request.Form获取提交的数据。 4. get传送的数据量较小,不能大于2KB。post传送的数据量较大, 一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中 为100KB。 5. get安全性非常低,post安全性较高。但是执行效率却比Post方法好。

action属性指定了提交表单时,数据将被发送到哪个URL
这个URL通常是一个服务器端脚本(如PHP、Python、Node.js等)处理数据action属性告诉浏览器将表单数据发送到指定的地址,以便服务器根据表单提交的内容做出相应的处理。

  1. action属性的值
    绝对URL :指定完整的URL,表单会发送到该服务器
    相对URL :指定相对于当前页面的URL,表单将会发送到该位置。
    空字符串("") :如果action为空字符串,表单数据将提交到当前页面
    默认为空:如果不指定action属性,浏览器会默认提交到当前页面的URL。
示例 1: 使用绝对URL
<form action="https://www.example.com/submit_form" method="post">
    <input type="text" name="username" placeholder="Enter your username">
    <input type="submit" value="Submit">
</form>
在这个例子中,当用户提交表单时,浏览器将表单数据通过POST方法发送到 https://www.example.com/submit_form 。

示例 2: 使用相对URL
<form action="/submit" method="post">
    <input type="text" name="email" placeholder="Enter your email">
    <input type="submit" value="Submit">
</form>
在这个例子中,表单数据会被发送到当前网站的/submit路径。例如,如果用户访问 https://www.example.com/contact ,表单粘贴数据发送到 https://www.example.com/submit 。

示例3: 不指定action属性(默认提交到当前页面)
<form method="post">
    <input type="text" name="name" placeholder="Enter your name">
    <input type="submit" value="Submit">
</form>
在这个例子中, action为空,因此表单数据将提交到当前页面的URL,即如果用户在 https://www.example.com/contact 页面上提交表单,数据会被提交到 https://www.example.com/contact 。

action和method属性的关系
action : 指定数据提交的目标地址。
method : 指定提交数据的方式(即 HTTP 请求方法)。常见的方法有:
GET : 将表单数据附加在 URL 后面,适用于获取信息。常用于查询操作。
POST : 将表单数据放在 HTTP 请求体中,适用于提交数据。常用于登录、注册、提交表单等操作。
例如:

html
复制代码

在这个表单中,数据会通过POST请求方式发送到/login地址,通常这个地址会处理用户的登录逻辑。

5.使用JavaScript动态设置action
您可以通过JavaScript动态修改action属性的值,根据需要调整表单提交的目标。例如:

html
复制代码

在上面的代码中,表单的action会在页面加载后被 JavaScript 动态修改为/newSubmit 。

6.结论
action属性告诉浏览器当表单提交时,数据发送到哪个服务器端URL。
如果没有指定action ,数据将提交到当前页面的URL。
action和method配合使用,可以精确控制表单数据的提交方式和目标。

示例:

<form action="/submit" method="post">
    <input type="text" name="username">
    <input type="submit" value="Submit">
</form>

这些就是HTML表单元素的概述和常见实例,每个元素在不同的情境下都有不同的使用方式,了解这些基础可以帮助你构建更好的用户交互界面。

[包含大量AI生成]

标签:示例,URL,元素,表单,提交,action
From: https://www.cnblogs.com/GJ504b/p/18541568

相关文章

  • 使用开源的低代码可视化表单设计器组件FcDesigner帮你实现低代码表单
    开源项目FcDesigner是基于Vue实现的低代码可视化表单设计器组件。可以通过拖拽的方式快速创建表单,提高开发者对表单的开发效率,节省开发者的时间。并广泛应用于在政务系统、OA系统、ERP系统、电商系统、流程管理等领域。源码地址:Github|Gitee|文档本项目采用Vue......
  • 代码随想录算法训练营第三天(LeetCode203.移除链表元素;LeetCode707.设计链表;LeetCode20
    LeetCode203.移除链表元素题目链接:LeetCode203.移除链表元素题目链接思路这道题目主要考察的是移除一个链表当中的元素,我们可以先在给定的链表前面加一个虚拟头结点,这样我们对给定链表头结点的操作和给定链表其余结点的操作就会变得相同。代码classSolution{p......
  • 3300. 替换为数位和以后的最小元素
    题目链接:https://leetcode.cn/problems/minimum-element-after-replacement-with-digit-sum/题解代码:classSolution{public:intminElement(vector<int>&nums){vector<int>n;for(inti=0;i<nums.size();i++)......
  • AcWing 1626:链表元素分类 ← 单链表
    【题目来源】https://www.acwing.com/problem/content/1628/【题目描述】给定一个单链表,请编写程序将链表元素进行分类排列,使得所有负值元素都排在非负值元素的前面,而[0,K]区间内的元素都排在大于K的元素前面。但每一类内部元素的顺序是不能改变的。例如:给定链表为18→......
  • 前端技术对html中块级元素的学习
    块级元素目录块级元素列表元素有序列表无序列表自定义列表列表元素有序列表在HTML中,标签用来表示有序列表。有序列表之间的内容有先后顺序之分,例如菜谱中的一系列步骤,这些步骤需要按顺序完成,这时就可以使用有序列表。我们来看一个简单的实例:<!DOCTYPEhtml><htmllang......
  • 4-5-1.C# 数据容器 - Stack(Stack 的定义、Stack 元素的基本操作、Stack 元素的遍历、S
    Stack概述Stack<T>遵循后进先出的规则存储元素Stack<T>支持泛型,可以指定存储的元素的类型Stack<T>不是线程安全的,在多线程环境中需要谨慎使用一、Stack的定义定义StackStack<int>nums=newStack<int>();定义Stack并填充一些元素Stack<int>nums......
  • 4-4-1.C# 数据容器 - Queue(Queue 的定义、Queue 元素的基本操作、Queue 元素的遍历、Q
    Queue概述Queue<T>遵循先进先出的规则存储元素Queue<T>支持泛型,可以指定存储的元素的类型Queue<T>不是线程安全的,在多线程环境中需要谨慎使用一、Queue的定义定义QueueQueue<int>nums=newQueue<int>();定义Queue并填充一些元素Queue<int>nums=......
  • 4-3-1.C# 数据容器 - Dictionary(Dictionary 的定义、Dictionary 元素的基本操作、Dict
    Dictionary概述Dictionary<TKey,TValue>存储的是键值对(Key-Value),通过键(Key)来存储或修改值(Value)Dictionary<TKey,TValue>存储的键值对是无序的Dictionary<TKey,TValue>存储的键是不可重复的Dictionary<TKey,TValue>支持泛型,可以指定存储的键值对的类型D......
  • 代码随想录算法训练营第十一天 | 150. 逆波兰表达式求值+ 239. 滑动窗口最大值+347.前
    今天接着补上周末的栈与队列的part2,下午继续完成今天的任务。150.逆波兰表达式求值 给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。请你计算该表达式。返回一个表示表达式值的整数。注意:有效的算符为 '+'、'-'、'*' 和 '/' 。每个......
  • 力扣 第540题 有序数组中的单一元素
    解题思路:        因为解决方案必须满足`O(logn)`的时间复杂度,和`O(1)`的空间复杂度。所以我们首先考虑用二分查找的思想。这个问题的关键是找到我们要找的元素在左边还是右边的判断条件。        要找的元素在左边还是右边的判断条件是什么呢?题......