2010-02-04 4 views
0

Я использую фильтруемый сценарий портфолио с помощью новых медиа-кампаний (http://www.newmediacampaigns.com/page/a-jquery-plugin-to-create-an-interactive-filterable-portfolio-like-ours), который отлично работает при использовании обычных ссылок в неупорядоченном списке. Однако я хотел бы предложить варианты в selectbox. Может ли кто-нибудь указать мне в правильном направлении?портфолио с фильтром jquery с использованием selectbox вместо обычного href

редактировать: Я хотел бы использовать фильтр, выбрав параметры из переключателя, как так

<select id="someid"> 
    <option selected value="#All">All</option>    
    <option value="#Design">Design</option>  
    <option value="#Political">Political</option> 
    <option value="#Business">Business</option> 
</select> 
+0

какие варианты вы хотите предложить в переключателе? Вы имеете в виду как * Design/Agency Partner/Political *? – Natrium

+0

это именно то, что я пытаюсь сделать – Taeke

+0

, пожалуйста, определите * selectbox * немного больше – Natrium

ответ

1

у вас есть change -Event на вашем select. в этом обработчике вам нужно вызвать ту же процедуру, что и щелчок по ссылке!

но: повышение change -event зависит от браузера. можно сразу его называть, другие, когда вы размываете!

объединить идею с filterable docu:

$(document).ready(function(){ 
$('portfolio-list').filterable(); 
$('#linkID').click(function(){ 
    $('portfolio-list').trigger('filter', [ '#jquery' ]); 
}); 
}); 

например

var myFilterable = $('#myFilterable').filterable(); 
var mySelect = $('#mySelect'); 
mySelect.change(function() { 
    var index = mySelect[0].selectedIndex; 
    var element = mySelect[0].options[index]; 
    var tag = $(element).attr('value'); // jQuery variant 
    //var tag = element.value; // html variant 
    //var tag = $(element).val(); // should work either! 
    // TODO: create an array with the variable value 
    myFilterable.trigger('filter', /* array of tag(s) you want to show*/); 
}); 
+0

Спасибо, но я не могу заставить его работать. , работающий с пример, который я представил в моем первоначальном вопросе, должен ли массив выглядеть как myFilterable.trigger ('filter', new Array ('# all', '# Design', '# Political', '# Business')); или по-другому? И что мне делать с «// TODO ... получить id/class и передать его вашему компоненту-вызову» – Taeke

+0

посмотреть мое обновление: он (или документ) сообщает вам, как должен выглядеть массив! например, «TODO». 'element.attr ('id')' –

+0

Приветствия Андреаса! после изменения element.attr на var tag = $ (element) .attr ('value'); Это сработало – Taeke

Смежные вопросы