【发布时间】:2016-07-29 22:01:05
【问题描述】:
假设我使用下拉菜单将数据输入到 mysql 数据库中:
<div>
<input name="name" type="text" id="name" placeholder="Enter Name"></div>
<div>
<select name="position" id="position" type="text">
<option selected="selected">Select</option>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
</div>
使用普通文本字段,我可以简单地包含值字段以在表格中显示最初输入的数据在表格中。并更改它,以便当我提交表单时,它会更新相关字段。
<div>
<select name="position" id="position" type="text" value="<?php echo $row_position['Position']; ?>>
<option selected="selected">Select</option>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
</div>
所以假设我不想更新与下拉列表相关的字段,我该怎么做?因为发生的情况是,一旦我提交表单而不从下拉列表中选择任何选项,它会从列表中选择第一个选项,即“选择”选项,并使用它来更新数据库中的相关字段。
【问题讨论】:
-
保持第二个 html sn-p 中的所有内容,只需将
disabled属性添加到第一个选项。 -
@marmeladze 如果我将禁用添加到第一个选项,那么它只会继续选择第二个选项。我在想的是,如果我不从下拉列表中选择一个选项,那么它不应该更新数据库中的字段
-
为什么不把最初输入的数据设为选中的呢?
-
另一种可能性是给“选择”值 -1 并在服务器端检查是否应该更新 (
if($_POST['position']>0))。 -
也感谢@marmeladze 的贡献。