Одна и та же переменная во все блоках
Здравствуйте, уважаемые форумчане
Есть код вида <ul> <li class="seminargr hide" id="eq-0"> <a href="seminar-test"><b id="date2">09-07-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr hide" id="eq-1"> <a href="seminar-test"><b id="date2">18-07-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr hide" id="eq-2"> <a href="seminar-test"><b id="date2">23-07-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr hide" id="eq-3"> <a href="seminar-test"><b id="date2">31-07-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr hide" id="eq-4"> <a href="seminar-test"><b id="date2">06-07-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr hide" id="eq-5"> <a href="seminar-test"><b id="date2">17-08-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr hide" id="eq-6"> <a href="seminar-test"><b id="date2">03-08-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr hide" id="eq-7"> <a href="seminar-test"><b id="date2">20-07-2015</b><br>tyutyutyu</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li> </ul> И скрипт <script type="text/javascript"> var indexedElement = $('.seminargr'); indexedElement.attr('id', function(index) { return 'eq-' + index; }); var date1 = $("#date1").text(); var date2 = $("#date2").text(); var newValue = date2.replace(/[^0-9\.]/g, ''); var newValue2 = date1.replace(/[^0-9\.]/g, ''); var myInteger = parseInt(newValue); var myInteger2 = parseInt(newValue2); if(myInteger2 > myInteger) { $( "li.seminargr" ).addClass( "hide" ); } $(".myDiv1" ).text(myInteger); $(".myDiv2" ).text(myInteger2); </script> По идее в блоке <div class="myDiv1">9072015</div должны быть разные переменные, те что хранятся в блоке <b id="date2">03-08-2015</b> но указывается только одна и та же 9072015. Прошу помощи |
Могу предположить, что проблема в том, что id на странице должен быть уникальным. А у вас #date1 #date2 много раз повторяются
|
делала с уникальными ид все равно не работает:cray:
у блока seminargr id разные |
Обьясню что в принципе пыталась сделать
Есть блоки с семинарами, у каждого семинара свое имя и дата (дата в виде текстовой переменной 03-07-2015) Нужно сравнить эту дату с текущей, и если семинар уже закончился скрыть его Так вот я вывела текущую дату в виде числа и дату семинара в виде числа, и если текущая больше то добавлять класс к диву с семинаром и потом скрывать его в стилях |
<style> .hide { display: none; } </style> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> <ul> <li class="seminargr" id="eq-0"> <a href="seminar-test"><b id="date2">09-07-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr" id="eq-1"> <a href="seminar-test"><b id="date2">18-07-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr" id="eq-2"> <a href="seminar-test"><b id="date2">23-07-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr" id="eq-3"> <a href="seminar-test"><b id="date2">31-07-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr" id="eq-4"> <a href="seminar-test"><b id="date2">06-07-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr" id="eq-5"> <a href="seminar-test"><b id="date2">17-08-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr" id="eq-6"> <a href="seminar-test"><b id="date2">03-08-2015</b><br>Санкт-Петербург</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li><li class="seminargr" id="eq-7"> <a href="seminar-test"><b id="date2">20-07-2015</b><br>tyutyutyu</a> <div id="date1" style="display:none">23-07-2015</div> <div class="myDiv1">9072015</div> <div class="myDiv2">23072015</div> </li> </ul> <script> var indexedElement = $('.seminargr'); indexedElement.attr('id', function(index) { return 'eq-' + index; }).each(function() { var date1 = $(this.querySelectorAll('#date1')).text(); var date2 = $(this.querySelectorAll('#date2')).text(); var newValue = date2.replace(/[^0-9\.]/g, ''); var newValue2 = date1.replace(/[^0-9\.]/g, ''); var myInteger = parseInt(newValue); var myInteger2 = parseInt(newValue2); if(myInteger2 > myInteger) { $(this).addClass( "hide" ); } $(this).find(".myDiv1" ).text(myInteger); $(this).find(".myDiv2" ).text(myInteger2); }); </script> |
Круто, спасибо большое)
|
Часовой пояс GMT +3, время: 04:23. |