6

我想知道是否可以为 HTML 文本框赋值并保护它。

我的意思是让它的内容不可修改,这样当表单被提交时,我“确定”它是提交的这个值。

顺便说一句,我意识到更简单的方法不是“听”这个输入并分配它,但能够执行上述操作会派上用场。

我希望这个问题足够清楚,请要求任何需要的澄清。

提前致谢!

编辑:我绝对不够清楚,但我试图表达我应该在提交后保留该值(在客户端不可修改)

4

5 回答 5

7

不,这不对。你永远不应该相信用户输入,包括表单提交。

其他答案告诉您如何将该字段标记为只读。如果您想显示特定值,同时显示它不打算编辑,这很有用。

但是,它仍然可以使用 Firebug、DOM Inspector 等进行修改。或者,他们可以完全不使用浏览器提交 HTTP 请求。

我建议将值存储在会话中。

于 2010-11-17T21:00:07.187 回答
6

设置readonly输入元素的属性:

<input type="text" readonly="readonly" />

这将防止任何修改(除非用户使用 DOM 检查器进行编辑)。始终验证服务器上的输入。如果您不希望进行任何更改,请不要让用户对其进行编辑。

http://www.w3schools.com/tags/att_input_readonly.asp

于 2010-11-17T20:59:44.063 回答
3

表单输入具有“禁用”和“只读”属性,您可以设置它们以使其不可编辑。

http://htmlhelp.com/reference/html40/forms/input.html

尽管您永远无法 100% 确定从客户端发送的内容。客户端可以编辑整个 DOM。

于 2010-11-17T20:59:37.187 回答
3

就这样做

<input type="text" value="VALUE" readonly />

然后它将是只读的:)

于 2010-11-17T20:59:47.437 回答
3

<input type="text" readonly="readonly"/>. 但是:永远不要确定,并在服务器端验证数据。使用无效数据请求 GET/POST 非常容易。

于 2010-11-17T21:03:09.453 回答