За последние 24 часа нас посетили 20403 программиста и 1089 роботов. Сейчас ищет 861 программист ...

Помогите пожалуйста допилить скрипт javascript

Тема в разделе "Сделайте за меня", создана пользователем Evgeny_T, 18 апр 2019.

  1. Evgeny_T

    Evgeny_T Новичок

    С нами с:
    19 мар 2019
    Сообщения:
    4
    Симпатии:
    0
    В переменную $x передаются различные текстовые значения и выводиться всё в колонку, хотелось бы эти разные значения при помощи скрипта покрасить разными цветами.
    Поискал в инете и нашёл скрипт, чуть поправил его, но не работает =((
    Помогите пожалуйста дописать его.
    Код (Text):
    1. <?php
    2. $x = '5555';
    3. echo "
    4. <script type='text/javascript'>
    5. $('td.profit').each(function(){
    6. var x = $(this).text();
    7. if (x > 0) $(this).css({color: 'green'});
    8. });
    9. </script>
    10.  
    11. <table border=1>
    12. <tr><td class='profit'>$x</td></tr>
    13. <tr><td class='profit'>$x</td></tr>
    14. <tr><td class='profit'>$x</td></tr>
    15. <tr><td class='profit'>$x</td></tr>
    16. </table>";
    17. ?>
     
  2. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    @Evgeny_T javascript тут не нужен. Сделай в своем файле css классы с цветами например такие:
    Код (Text):
    1. .red{
    2.     color: #FF7777 !important;
    3. }
    4.  
    5. .green{
    6.     color: #BEF7C7 !important;
    7. }
    8.  
    9. .yellow{
    10.     color: #FFFFBF !important;
    11. }
    Потом в php через foreach ставь условие. Вот например:
    PHP:
    1. $array = [0,3,-1,10,11,0,-10];
    2. $result = "<table border=1>";
    3. foreach ($array as $val){
    4.       if($val > 5){
    5.            $result .='<tr><td class="profit green">'.$val.'</td></tr>';
    6.       }else if($val > 0){
    7.            $result .='<tr><td class="profit yellow">'.$val.'</td></tr>';
    8.       }else{
    9.            $result .='<tr><td class="profit red">'.$val.'</td></tr>';
    10.       }
    11. }
    12. $result .= "</table>";
    13. echo $result;
    Фаил css наверное уж умеешь подключать.
     
    #2 Artur_hopf, 18 апр 2019
    Последнее редактирование: 18 апр 2019
  3. Evgeny_T

    Evgeny_T Новичок

    С нами с:
    19 мар 2019
    Сообщения:
    4
    Симпатии:
    0
    На подобии такого уже раньше писал так. В этот раз хотел скриптом обойтись.
    Но всё равно Спасибо!
     
  4. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    @Evgeny_T javascript тут будет нужен если только твои значения уже меняются в онлайн режиме, через ajax например.
     
  5. Fibonachi

    Fibonachi Новичок

    С нами с:
    21 апр 2019
    Сообщения:
    5
    Симпатии:
    0
    Насколько я понял, суть вопроса покрасить именно разными цветами. Можно сделать так:
    PHP:
    1. $data_array = Array('строка 1', 'строка 2', 'строка 3', 'строка 4', 'строка 5');
    2.  
    3. echo("<table border='1'>");
    4. foreach ($data_array as $x) {
    5.     echo("<tr><td class='profit' style='color: rgb(".rand_color().");'>".$x."</td></tr>");
    6. }
    7. echo("</table>");
    8.  
    9. function rand_color() {
    10.     return rand(0, 255).", ".rand(0, 255).", ".rand(0, 255);
    11. }