【发布时间】:2018-05-09 12:56:43
【问题描述】:
我的表单中有各种表单字段,但是它们都要求用户能够提交一个空值。以下始终是第一个选项的文本。
我怎样才能让它 POST 的 value=""
<select class="form-control" name="type">
<option value="" hidden>All</option>
<option value="Apartment">Apartment</option>
<option value="Villa">Villa</option>
<option value="Hotel">Hotel</option>
</select>
如果我转储$ _post ['类型']我会在没有选项时获取“全部”。我需要它是空的。
更新:添加 PHP 函数
/*****************
Setup the type filter
*****************************/
if (!$_POST['type'] == '') {
$type = $_POST['type'];
$type_query = array(
'meta_key' => 'type_name',
'value' => array($type)
);
array_push($meta_query, $type_query);
$_SESSION['type'] = $type;
} elseif(isset($_SESSION['type'])) {
$type = $_SESSION['type'];
$type_query = array(
'meta_key' => 'type_name',
'value' => array($type)
);
array_push($meta_query, $type_query);
}
//POST dump
Array
(
[type] => All
[location] => All Locations
[bedfrom] =>
[bedto] =>
[ref] =>
[issearch] => 1
)
//SESSION dump
Array
(
[location] => All Locations
[type] => All
)
【问题讨论】:
-
为什么要
POST一个空值?如果您不需要向服务器发送任何POST任何内容,GET请求不会正常工作吗? -
i.imgur.com/j0tXV8X.png — 我无法重现该问题。
-
为什么不通过 value="All" 然后相应地更改服务器脚本? - 我什至不认为你可以在一个选项上有一个隐藏的属性
-
你是用ajax发送表单吗?
-
只是提示
if (!$_POST['type'] == '')可以这样写if ( !empty($_POST['type']) )