选择禁用不插入的字段[重复]

Posted

技术标签:

【中文标题】选择禁用不插入的字段[重复]【英文标题】:select field with disabled not inserting [duplicate] 【发布时间】:2019-09-06 10:28:16 【问题描述】:

我的选择字段是禁用属性

<select  name="gender" id="gender" disabled="disabled">
   <option value="">Select Gender</option>
   <option value="male">Male</option>
   <option value="female">Female</option>
</select>

禁用值没有插入数据库所以我写了

<input type="hidden" name="gender" value="<?php echo $_POST['gender']; ?>">

虽然值存在,但仍然显示错误

“性别”列不能为空

【问题讨论】:

把你的插入代码放在问题里。 您只能拥有一个名为gender 的元素。如果已经设置,请使用条件。您的第二种用法是 XSS 可注入。 在这里分享您的验证码? $_POST 不包含名为 gender 的项目,因为禁用的输入字段不会出现在表单的参数集中。您需要 php 中的代码来处理该字段的缺失。 那么写什么代码@O.Jones 【参考方案1】:

您可以像这样使用readonly 而不是disabled:-

<select  name="gender" id="gender" readonly>
    <option value="">Select Gender</option>
    <option value="male">Male</option>
    <option value="female">Female</option>
</select>

【讨论】:

只读不适用于选择字段 尝试单选按钮而不是选择。

以上是关于选择禁用不插入的字段[重复]的主要内容,如果未能解决你的问题,请参考以下文章

带有初始数据的 Django 禁用字段引发验证错误 [重复]

mysql过滤重复数据的问题

:禁用选择器在Jquery Validate忽略子句中不起作用[重复]

禁用文本字段[重复]

MySQL 常用插入语法总结

如何在移动 Safari 的下拉列表中禁用选择选项 [重复]