# HTML input 参考

URL: https://caijiao.org/reference/html/input
Source: docs/reference/html/input.md
Description: HTML input Reference，整理 type、name、value、placeholder、required、autocomplete、常见输入类型和表单校验。

`<input>` 是 HTML 中最常用的表单控件。它通过 `type` 切换文本、邮箱、密码、数字、日期、文件、复选框等输入模式。

## 语法

```html
<label>
  邮箱
  <input name="email" type="email" required autocomplete="email">
</label>
```

## 常用属性

| 属性 | 说明 |
| --- | --- |
| `type` | 输入类型，例如 `text`、`email`、`password`、`file` |
| `name` | 字段名，提交表单和 FormData 依赖它 |
| `value` | 当前值或默认值 |
| `placeholder` | 输入提示，不应替代 label |
| `required` | 必填 |
| `disabled` | 禁用，禁用字段不会提交 |
| `readonly` | 只读，字段仍可提交 |
| `autocomplete` | 浏览器自动填充提示 |

## 常见 type

```html
<input type="text">
<input type="email">
<input type="password">
<input type="number">
<input type="date">
<input type="file">
<input type="checkbox">
<input type="radio">
```

## 常见错误

- 只写 placeholder，不写可访问的 label。
- 缺少 `name`，导致表单提交时字段丢失。
- 使用 `type="number"` 处理手机号、邮编等非计算数值，可能丢失前导 0。
- 误以为 `required` 足够安全；浏览器校验可以绕过，服务端仍要校验。

## 相关内容

- [HTML Reference](/reference/html/)
- [HTML 表单控件](/html/05-forms/02-controls)
- [HTML 表单验证](/html/05-forms/03-validation)
- [FormData 参考](/reference/web-api/formdata)
- [MDN input element](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input)
