Фильтровать дивы в зависимости от числового ввода - PullRequest
2 голосов
/ 29 сентября 2011

Я пытаюсь настроить фильтр с помощью jQuery. У меня будет определенное количество div с, каждое с числовым значением (скажем, цена).

Я хочу иметь текстовое поле и кнопку, отфильтровывающие любые div с выше указанного значения. Так, например, если я введу 10 и нажму фильтр, все дивы с числовым значением 10 или выше будут скрыты.

Я могу найти только сценарии фильтра, которые выполняются с помощью кнопок , например, , но ни один из них не использует числовое значение.

Любая помощь очень ценится. Пожалуйста, помните, что мои навыки JavaScript ограничены!

Ответы [ 2 ]

3 голосов
/ 29 сентября 2011

Может быть, что-то вроде этого, итерация через каждый div, который имеет class из prices Получите значение, проанализируйте его как int, сравните его с textbox с id из myTextBox

$('div.prices').each(function() {
    var value = parseInt($(this).text());
    if (value >= parseInt($('#myTextBox').val()))
       $(this).hide();
    else 
       $(this).show();
})

jsFiddle

1 голос
/ 29 сентября 2011

Вот эта вещь:

http://jsfiddle.net/SMPAq/1/

UPDATE:

Хорошо, вот и все:

<script>
function sortmebaby()
{
    var divList = $('#containerMonkey div[id^="monkey_"]');  

$.each(divList, function(index, value)
{
    console.log($(value).attr('xprice'));
    if ( $(value).attr('xprice') > $('#mankipower').val())
        $(value).hide();
    else
        $(value).show();
    //alert(index + ': ' + value);
});

}
</script>

<div id="containerMonkey">
    <div id="monkey_1" xprice="1">1</div>
    <div id="monkey_2" xprice="2">2</div>
    <div id="monkey_3" xprice="3">3</div>
    <div id="monkey_4" xprice="4">4</div>
    <div id="monkey_5" xprice="5">5</div>
</div>
<input type="text" name="mankipower" id="mankipower">
<input type="button" value="PUSH" onclick="sortmebaby()">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...