• Страница 1 из 1
  • 1
Вывод элементов с заданным значением
raider023 Оффлайн
Проверенный
0
Дата: Воскресенье, 2016-05-08, 23:01 | Сообщение # 1
Подскажите, как исправить, чтобы скрипт был рабочий.
Суть такова: в текстовое поле вводится число, затем по нажатию на кнопку происходит скрытие всех элементов, значение которых больше введенного числа.
Когда элемент один (один span), то все срабатывает, когда значений несколько, то нет.

Вот набросал, как знал
Код

<input id="maxprice" type="text" />
<input type="button" id="result" onclick="showu();" value="Result" />
<div class="pice">
<span>34</span>
<span>30</span>
<span>39</span>
</div>

<script>
function showu() {
var maxp = $('#maxprice').val();
var suk = $('.pice span').text();
var sukk = parseInt(suk);
var maxpp = parseInt(maxp);
if (sukk > maxpp) {$('.pice span').hide();}
else {$('.pice span').show();}
}
</script>


Профиль
admin Оффлайн
Проверенный
429
Дата: Понедельник, 2016-05-09, 00:41 | Сообщение # 2
У вас целый ряд span, а у вас переменная "suk" равная первому span. Понимаете? Вам нужно использовать цикл "for" или на jQuery "echo". Если напишите подробнее, то может придумаем что-то. Я зачастую не понимаю, что нужно пользователям, т.к. свои задачи вы пишите обтекаемо и размыто, пишите конкретно, а лучше с примерами.

Принцип примерно такой: запускаем цикл на основе количества span, внутри цикла сверяем содержимое каждого span и скрываем в зависимости от условия.


Помог? Ставь или поддержи проект.
Профиль
admin Оффлайн
Проверенный
429
Дата: Понедельник, 2016-05-09, 00:45 | Сообщение # 3
34 30 39


Помог? Ставь или поддержи проект.
Профиль
admin Оффлайн
Проверенный
429
Дата: Понедельник, 2016-05-09, 00:46 | Сообщение # 4
Ладно, я трепался-трепался. Вот, вроде работает:

Код
<input id="maxprice" type="text" />
<input type="button" id="result" onclick="showu();" value="Result" />
<div class="pice">
<span>34</span>
<span>30</span>
<span>39</span>
</div>

<script>
function showu() {
var maxp = $('#maxprice').val();
var maxpp = parseInt(maxp);

var i;

for (i = 0; i < $('.pice span').length; i++) {
if (parseInt($('.pice span').eq(i).text()) > maxpp) {$('.pice span').eq(i).hide();}
   else {$('.pice span').eq(i).show();}
  }
}

</script>


Помог? Ставь или поддержи проект.
Профиль
raider023 Оффлайн
Проверенный
0
Дата: Понедельник, 2016-05-09, 14:25 | Сообщение # 5
admin, спасибо! Именно то, что было нужно.

Профиль
  • Страница 1 из 1
  • 1
Поиск: