我添加了一个"重置过滤器"按钮,它完美地做了它所承诺的,所以无论何时点击它,所有选定的过滤器都会被重置。 然而,有一件事情仍然困扰着我,让我记下用于过滤的下拉菜单。当在该下拉列表中选择了某些内容时,我点击了"重置"按钮,下拉列表仍显示所选值。只有在打开下拉列表时,我才会看到实际上没有选择任何内容。 我添加了以下屏幕截图,以显示我的意思。这是我点击"重置过滤器"之后的情况。按钮,所以下拉列表的重置工作(没有选择值),但它仍然显示" BR"选择..如果我现在选择该下拉列表的另一个值(例如CA),然后应用过滤器(BR和CA)将被选中.. 所以我想,我需要一个ajax,在我点击"重置过滤器"后重新加载页面?还是有一个javascript处理重置?我有点失落。
顺便说一下。我正在使用bootstrap-multiselect.js进行下拉列表!
$('#document_filter_markets').multiselect({
enableCaseInsensitiveFiltering: true, includeSelectAllOption: true, nonSelectedText: 'Select Markets',
maxHeight: 200
});
任何想法如何清除一切?
答案 0 :(得分:0)
我终于找到了答案。
我添加了一个重置按钮:
<input type="reset" id="resetter" class="btn-primary btn btn-xs" value="Reset All"/>
然后在该按钮中添加了一些javascript以取消选中所有内容,然后刷新下拉列表:
$("#resetter").click(function () {
$('option', $('#document_filter_markets')).each(function(element) {
$(this).removeAttr('selected').prop('selected', false);
});
$("#document_filter_markets").multiselect('refresh');
});
希望它有所帮助!