Php 搜索/筛选数组
我有个问题。在我的网站上(基于混凝土5),我有一个块来显示图标列表。我有这个数组。(该阵列的图标比我显示的要多得多,这只是一个示例。)Php 搜索/筛选数组,php,arrays,search,filter,typeahead,Php,Arrays,Search,Filter,Typeahead,我有个问题。在我的网站上(基于混凝土5),我有一个块来显示图标列表。我有这个数组。(该阵列的图标比我显示的要多得多,这只是一个示例。) 我想修改我的搜索框,这样用户就可以输入一些内容来过滤数组中的结果。(例如:如果他们搜索锚点,他们会看到两个图标锚点字段) 有人能帮我解决这个问题吗 以下是我的代码供将来参考: <script> $('input[name=fromPages]').select2({ placeholder: "<?=t('Search fo
我想修改我的搜索框,这样用户就可以输入一些内容来过滤数组中的结果。(例如:如果他们搜索锚点,他们会看到两个图标锚点字段)
有人能帮我解决这个问题吗
以下是我的代码供将来参考:
<script>
$('input[name=fromPages]').select2({
placeholder: "<?=t('Search for a Page')?>",
minimumInputLength: 1,
width: '100%',
multiple: true,
ajax: {
url: "<?=$view->action('load_pages')?>",
dataType: 'json',
quietMillis: 250,
data: function (term, page) {
return {
q: term
};
},
results: function (data, page) { // parse the results into the format expected by Select2.
var results = [];
$.each(data, function(i, concretePage) {
results.push({'id': concretePage.id, 'text': concretePage.name});
});
return {
results: results
};
},
cache: true
}
});
</script>
$('input[name=fromPages]')。选择2({
占位符:“”,
最小输入长度:1,
宽度:“100%”,
多重:对,
阿贾克斯:{
url:“”,
数据类型:“json”,
安静百万:250,
数据:功能(术语,第页){
返回{
问:任期
};
},
结果:函数(数据,页面){//将结果解析为Select2所需的格式。
var结果=[];
$.each(数据、函数(i、第页){
push({'id':concretePage.id,'text':concretePage.name});
});
返回{
结果:结果
};
},
缓存:真
}
});
对于选择框:
<div class="form-group">
<?php echo $form->label('fromPages', 'Search for an Icon')?>
<div>
<?php echo $form->hidden('fromPages'); ?>
</div>
</div>
和一张图片:(顶部的搜索框将从打开的列表中过滤结果)
查看typeahead.js库,仅用php无法实现这一点
查看typeahead.js库,仅用php无法实现这一点
PROTIP:用你正在使用的语言标记问题。PROTIP:用你正在使用的语言标记问题。我忘了提到我已经实现了select2。如果有什么方法可以用的话,我很想知道。你看过select2的例子了吗?你只是在问如何将你的php转换成js对象吗?我设法使用了它,并使它正常工作,但在不同的上下文中。它搜索我的所有页面,但我希望它搜索我上面的数组。这是我试图做的一个图像,我想从打开的搜索栏过滤结果,这是我在原始问题中粘贴的数组,我忘了提到我已经实现了select2。如果有什么方法可以用的话,我很想知道。你看过select2的例子了吗?你只是在问如何将你的php转换成js对象吗?我设法使用了它,并使它正常工作,但在不同的上下文中。它搜索我的所有页面,但我希望它搜索我上面的数组。这是我试图在顶部搜索栏中执行的操作的图像,我想从打开的搜索栏中筛选结果,这是我在原始问题中粘贴的数组
<div class="form-group">
<?php echo $form->label('fromPages', 'Search for an Icon')?>
<div>
<?php echo $form->hidden('fromPages'); ?>
</div>
</div>