0

我需要根据 Dropbox 的选择过滤 MixItUp。我有一个物理按钮在工作,但是当我尝试将其更改为选择框时,我的代码失败了。

这是一个正确触发 MixItUp 过滤器的功能按钮:

<button class="filter btn red" data-filter=".2" data-parent="#plan_list" href="#2" data-toggle="collapse" onclick="set_plan("test","2")" id="plan-2"><i class="fa fa-tag margin-right-10"></i>test</button>

该函数在更改时触发,但未应用过滤器。(我有一个触发的自定义函数,所以我知道调用正在工作)。

我的代码基于这个 codepen:http ://codepen.io/patrickkunka/pen/btCim

这是更改的JS:

$(function(){
    var $filterSelect = $('#FilterSelect'),
    $container = $('#Container');
    $container.mixItUp();
    $filterSelect.on('change', function(){
       $container.mixItUp('filter', '.'+this.value);
       set_plan('test',this.value); //custom function working properly
    });
});

在上面的 JS 中 this.value 是 plan_id 。我必须在上面的代码中添加 '.'+this.value ,以便其他函数可以在干净的计划 ID 上工作。我已经测试了这段代码并且该部分有效,所以我知道这不是问题。

这是选择(php)的代码:

<select id="FilterSelect">
<? foreach ($plans as $plan) {echo '<option value="'.$plan['id'].'">'.$plan['name'].'</option> ';?>
</select>

谁能告诉我我错过了什么?按钮有效,选择无效。

4

1 回答 1

0

我发现了问题。它不在上面列出的代码中:

我缺少要过滤的 html 类别的容器 ID。

<div class="Container">

本来应该:

<div id="Container" >

愚蠢的简单错误,我多次查看此代码并看到它,但在我的脑海中将其视为 id 而不是 class。

新问题,我如何修复我的大脑中的错误????!!!

于 2015-11-05T19:34:28.490 回答