【发布时间】:2021-08-29 15:25:54
【问题描述】:
根据 HTML 规范,HTML 中的select 标签没有readonly 属性,只有disabled 属性。所以如果你想让用户不改变下拉菜单,你必须使用disabled。
唯一的问题是禁用的 HTML 表单输入不会包含在 POST / GET 数据中。
模拟select 标记的readonly 属性并仍然获取POST 数据的最佳方法是什么?
【问题讨论】:
-
服务器端不要依赖它。任何人都可以创建自己的 HTML 页面并将其设为 RW。
-
但这不是 PHP 特有的问题。
-
我建议在这种情况下根本不要使用选择元素。有什么理由不能将值显示为纯文本?
-
@ppumkin 您的评论毫无意义。我并不是说选择或隐藏表单字段从来没有一个好的用例。 OP 在页面上显示一些文本时遇到问题,我只是想知道在这种情况下使用 select 元素的目的是什么。
-
我一定是读错了问题。他说他想禁用选择,这样用户就不会改变它。也许他需要使用选择来呈现页面并使用 jquery 来防止更改。但是当他提交回来时,没有任何数据。我也在做同样的事情。我需要显示由其他选择过滤的选择,最后一个下拉菜单通过 ajax 保存到数据库,因此必须锁定之前的所有选择。当我重新渲染页面时,是的,好的——我可以显示标签而不是选择。但这不是问题:)
标签: javascript html