如果不包含使用php的任何值,则禁用下拉列表

时间:2015-01-27 11:53:03

标签: javascript php html arrays

如果下拉列表没有使用foreach包含任何值来获取数据库中的数据,如何禁用下拉列表?

这是我目前的代码:

<?php
  $aFilters['AgentName'];

  echo "<select name='AgentName' id='selAgentName'>";
  echo "<option value=''>Select Agent</option>";

  foreach($agentsName as $ar) {
    echo "<option value='$ar->id'>$ar->first_name$ar->last_name</option>";
  }

  echo "</select>";
?> 

4 个答案:

答案 0 :(得分:2)

您可以将{tnary运算符与count()

一起使用
 echo "<select " . (count($agentsName) > 0 ? "" : "disabled") . " name='AgentName' id='selAgentName'>";

如果您想删除下拉列表,以防数组(空数组)没有提供选项:

if(count($agentsName) > 0) {
   echo "<select name='AgentName' id='selAgentName'>";
   echo "<option value=''>Select Agent</option>";

   foreach($agentsName as $ar) {
      echo "<option value='$ar->id'>$ar->first_name$ar->last_name</option>";
   }
} 

答案 1 :(得分:0)

试试这个:

<select name='abc'>
<?php if(count($data)>0){ ?>
   @foreach ($data as $i)
      <option value="$i['id']">$i['Data']</option>
   @endforeach
<?php } else { ?>
      <option value="0">No Result</option>
<?php } ?>

看,如果有效。

答案 2 :(得分:0)

试试这个脚本:

<?php
  $aFilters['AgentName'];


    $i = 0;

  foreach($agentsName as $ar) {
    echo "<option value='$ar->id'>$ar->first_name$ar->last_name</option>";
    $i++;
  }
  ?>
<select <?php if ($i > 0) { echo " disabled "} ?> name='AgentName' id='selAgentName'>
<option value=''>Select Agent</option>
</select>

删除下拉脚本:

<?php 
$aFilters['AgentName'];
$i = 0;

foreach($agentsName as $ar) { 
    $i++; 
    if ($i>1) { 
        echo "<select name='AgentName' id='selAgentName'>";
        echo "<option value='$ar->id'>$ar->first_name$ar->last_name</option>"; 
    } 
} 
?>
<option value=''>Select Agent</option>
</select>

编辑:修正了所有错误

答案 3 :(得分:0)

试试这个:

<?php
 $aFilters['AgentName'];

 if(count($agentsName)>0)
 {
  echo "<select name='AgentName' id='selAgentName'>";
  echo "<option value=''>Select Agent</option>";

  foreach($agentsName as $ar) {
  echo "<option value='$ar->id'>$ar->first_name$ar->last_name</option>";
 }
   echo "</select>";
  }
?>