2017-10-05 132 views
1

我有一个选择使用foreach循环查询的数据填充的HTML选择。它看起来是这样的保留默认选项值空html选择

$client = $wpdb->get_results("SELECT string FROM `file` WHERE 
`code` = 002 AND `status` = 2"); 

echo 'Filter by client: '; 
    echo '<select name="client_list">'; 
    foreach ($client as $key => $row) { 
    $value = $row->string; 
    echo 
    '<option value='.$value.'>' 
    .$value. '</option>'; 
    } 
    $client = $_GET['client_list']; 
    echo '</select>'; 

它作为一个过滤器来显示基于选择的选项值数据。它过滤的表看起来像这样的

|client | file    | 
    |------ |-------------------| 
    |client1 | file00000   | 
    |client2 | file00002   | 

现在我想使html的第一个选项值(默认值)为空。我该怎么做呢?

回答

0

您可以使用此

 $client = $wpdb->get_results("SELECT string FROM `file` WHERE 
    `code` = 002 AND `status` = 2"); 

    echo 'Filter by client: '; 
    echo '<select name="client_list"><option value=""></option>'; 
    foreach ($client as $key => $row) { 
     $value = $row->string; 
     echo 
     '<option value='.$value.'>' 
     .$value. '</option>'; 
    } 
    $client = $_GET['client_list']; 
    echo '</select>'; 
+1

给出两个空值。你错过了/在选择。 – R1ddler

+0

@ R1ddler你写了*“这给出了两个空值,你错过了/在选项中”* - 所以我对这个评论感到困惑,它是否完全解决了这个问题,没有任何事情要做与您的新问题https://stackoverflow.com/q/46588904/1415724 –

+0

如果您忽略关闭/在选项,这确实提供了两个空值。这解决了问题,我只需要添加/选项,它的工作。我的新问题与此不同,与此无关。 – R1ddler

0

添加一个空的选项第一:

echo '<select name="client_list"><option value=""></option>'; 

上提交如果client_list是空的,你认识的人没有选择任何东西。

+0

,致力于创建一个空值,但是当我点击提交,它并没有取得理想的结果。当我提交空客户名单时,我想显示一个干净的未经过滤的查询,但它不会给我任何结果。 – R1ddler

+0

这是另一个问题比原来的。你不应该在你的查询中使用'$ client = $ _GET ['client_list'];'如果它的空 –