我对<input type="hidden">标签的最初用途很好奇.

现在,它经常与JavaScript一起使用,在其中存储变量,这些变量被发送到服务器,诸如此类的事情.

因此,<input type="hidden">存在before个JavaScript,那么它最初的目的是什么呢?我只能想象从服务器向客户端发送一个值,该值(不变)发回以维护某种状态.或者是我在它的历史上弄错了什么,<input type="hidden">总是应该和JavaScript一起使用?

如果可能,请在您的答案中也提供参考资料.

推荐答案

我只能想象从服务器向客户端发送一个值,该值(不变)发回以维护某种状态.

正是如此.事实上,它至今仍在用于此目的,因为我们今天所知的HTTP仍然是一种无状态协议,至少在根本上是这样.

这个用例实际上是在HTML 3.2年首次描述的(我很惊讶HTML2.0没有包括这样的描述):

type=hidden
These fields should not be rendered and provide a means for servers to store state information with a form. This will be passed back to the server when the form is submitted, using the name/value pair defined by the corresponding attributes. This is a work around for the statelessness of HTTP. Another approach is to use HTTP "Cookies".

<input type=hidden name=customerid value="c2415-345-8563">

虽然值得一提的是,HTML3.2只是after JavaScript的初始版本才成为W3C推荐标准,但可以放心地认为隐藏字段几乎总是用于相同的目的.

Html相关问答推荐

防止滚动的内容显示在表的边框中

使用tauri构建的Next.js应用程序不显示我的404页面

css网格区域的布局不展开,也不显示滚动条

如何使用bslb设置可导航页面侧边栏的样式

Chrome和Safari浏览器中的CSS3动画不同

在 bootstrap 中的弹性项之间添加连接行

Tumblr博客:如何修复提交页面和询问页面框列计数问题?

如何在html和css中创建动态调整大小的表元素

我怎样才能在我的网站上制作花哨的角落

如何在页面太短时使<;img&>缩小而不发生y溢出

从网页中提取URL

Vutify中看不见的V行

使用单个粗体字符串向段落添加页边空白

Tailwind CSS 忽略我的元素的填充

如何使用javascript在jsx中重复插入特殊字符?

如何消除线性渐变线的模糊?

在 CSS 中的 div 中获取文本以环绕其他文本?

如何调整网格中单元格的高度?

我无法设置使用 Tailwind CSS 创建的仪表板的网格 struct

如何使用 CSS 制作蜂窝状网格?