我想知道是否可以为 HTML 文本框赋值并保护它。
我的意思是让它的内容不可修改,这样当表单被提交时,我“确定”它是提交的这个值。
顺便说一句,我意识到更简单的方法不是“听”这个输入并分配它,但能够执行上述操作会派上用场。
我希望这个问题足够清楚,请要求任何需要的澄清。
提前致谢!
编辑:我绝对不够清楚,但我试图表达我应该在提交后保留该值(在客户端不可修改)
不,这不对。你永远不应该相信用户输入,包括表单提交。
其他答案告诉您如何将该字段标记为只读。如果您想显示特定值,同时显示它不打算编辑,这很有用。
但是,它仍然可以使用 Firebug、DOM Inspector 等进行修改。或者,他们可以完全不使用浏览器提交 HTTP 请求。
我建议将值存储在会话中。
设置readonly
输入元素的属性:
<input type="text" readonly="readonly" />
这将防止任何修改(除非用户使用 DOM 检查器进行编辑)。始终验证服务器上的输入。如果您不希望进行任何更改,请不要让用户对其进行编辑。
表单输入具有“禁用”和“只读”属性,您可以设置它们以使其不可编辑。
http://htmlhelp.com/reference/html40/forms/input.html
尽管您永远无法 100% 确定从客户端发送的内容。客户端可以编辑整个 DOM。
就这样做
<input type="text" value="VALUE" readonly />
然后它将是只读的:)
<input type="text" readonly="readonly"/>
. 但是:永远不要确定,并在服务器端验证数据。使用无效数据请求 GET/POST 非常容易。