我试图从自动完成数据中删除空白数组。我的意思是如何删除或删除空白数组从自动完成输出列表?
$(function() {
var available_tags=[ <?php
foreach(glob('../image/imagefiles/*.*') as $key=>$filename){
if($key==0)
{echo "'".$filename."'";}
else
{echo ",'".$filename."'";}
}
?> ];
$( "#tags" ).autocomplete({
minLength: 0,
source: available_tags,
});
});
<div class="ui-widget">
<input id="tags" size="50">
</div>
输出:.
..
image1
image2
需求输出:image1
image2
要删除从调用glob()
得到的清单中的两个引用.
和..
(这些条目不是空白,而是对当前目录和父目录的引用),您可以在迭代结果时忽略它们:
<?php
$elements = array();
foreach(glob('../image/imagefiles/*.*') as $key=>$filename) {
if(!in_array($filename, array('.', '..'))) {
$elements[] = "'".$filename."'";
}
}
echo implode(',', $elements);
您可能还想在那里添加一些html标记和htmlescape()文件名,但是这个代码片段应该有助于指出如何跳过条目…