javascript - 文件数组在下拉菜单中显示 "."和 ".."

标签 javascript php arrays dropdown

我正在开发一个下拉菜单,其中列出了特定文件夹中的所有文件。 总的来说,它运作得很好。然而,下拉菜单显示声明的文件夹中的所有 PDF 文件(这太棒了!),但也显示“。” 、“..”和下拉菜单中的“@eaDir”(这不太好!)

我尝试添加这样的内容

 $ignoredFiles = array('.', '..', '@eaDir');

但它不太知道在哪里调用它来排除所有扩展

这是我的 PHP 代码

  <select name="euvertragsklausel" id="euvertragsklausel" class="pdfliste">
<option value="">- Verfahrensverzeichnis -
<?php 
$dirPath = dir('euvertragsklausel');
 $ignoredFiles = array('.', '..','@eaDir');
$FileArray = array();
while (($file = $dirPath->read()) !== false)
    {
   $FileArray[ ] = trim($file);
    }
$dirPath->close();
sort($FileArray);
$c = count($FileArray);
for($i=0; $i<$c; $i++)
{

    echo "<option value=\"" . $FileArray[$i] . "\">" . $FileArray[$i] . "</option>\n";
}

?>
</select>
    <input type="button" class="btn btn-warning btn-xs" value="PDF  Öffnen!"
         onclick="gotoeuklausel()">
         <br /><br />  

还有我的 JavaScript。不过我认为问题不在这里

function gotoeuklausel(){
      if(document.getElementById('euvertragsklausel').value) {
    window.location.href =             "content/dokumente/euvertragsklausel/"+document.getElementById('euvertragsklausel').value;
  }
} 

最佳答案

只需使用 in_array 函数

while (($file = $dirPath->read()) !== false)
    {
     if (! in_array($file, $ignoredFiles)) {
        $FileArray[ ] = trim($file);
        }
    }

关于javascript - 文件数组在下拉菜单中显示 "."和 "..",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54550425/

相关文章:

php - 根据字符串相关性和字符串顺序在数据库中搜索字符串

arrays - 如何在 Delphi 中弃用数组类型声明?

arrays - 在 react 中映射对象键并返回子属性

javascript - Node.JS & Sequelize 定义关系

javascript - 是否可以输入带有变量的背景图像大小?

javascript - Facebook "Like"按钮根本不显示

PHP mysql : inserting data from an array

javascript - 设置超时 Internet Explorer

php - Cakephp 应用程序在 ec2 上显示不正确的路径

循环内的 C 代码未被执行