Показать определенное количество div - PullRequest
0 голосов
/ 25 марта 2012

У меня есть этот код Math.min(someVariable, 500)) У меня также есть некоторые div, которые я скрыл (display:none) Мой вопрос: как я могу использовать приведенный выше код в связи с событием Jquery 'show'? Я знаю, как проходит мероприятие, но я не знаю, как соединить два и два.

Таким образом, событие 'show' должно составлять show 'someVariable' or 500 от div. someVariable это число (от 0 до миллиарда)

Ответы [ 2 ]

1 голос
/ 25 марта 2012

Мне понадобится больше информации для решения вашего конкретного примера, но позвольте мне попробовать заполнить некоторые детали для более конкретного решения.

Я собираюсь предположить, что у вас есть куча div с идентификаторами вроде: "fieldDiv1", "fieldDiv2" и т. Д., Которые все потенциально скрыты. И у вас есть куча <input type="text"> полей, содержащих ваши числа 'someVariable', и они имеют идентификаторы, такие как: "fieldValue1", "fieldValue2" и т. Д. Итак, в javascript вы можете вызвать следующую функцию для решения вашей проблемы:

setVisibility : function() {
   for(var i = 1; document.getElementById("fieldDiv" + i) != null; i++) {
      if(!$("#fieldDiv" + i).is(':hidden') && document.getElementById("fieldValue" + i).value < 500) {
          $("#fieldDiv" + i).hide();
      else if($("#fieldDiv" + i).is(':hidden') && document.getElementById("fieldValue" + i).value >= 500){
          $("#fieldDiv" + i).show();
      }
   }
},

Я знаю, что должен был многое предположить, но надеюсь, что это поможет.

1 голос
/ 25 марта 2012

Вы можете использовать :lt селектор, чтобы показать первые 500 (на основе нуля).Если их меньше 500, будет отображаться все, если их больше, будет отображаться только 500

http://api.jquery.com/lt-selector/

     $('.someClass:lt(500)').show();

РЕДАКТИРОВАТЬ: для использования переменной необходимо объединить переменную в строку селектора:

   $('.someClass:lt('+Math.min(someVariable, 500)+')').show();

Или slice(startIndex,endIndex) метод фильтрации по индексным значениям, которые вы хотите отобразить

http://api.jquery.com/slice/

...