Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Jqerry&JS выборка с подсветкой (https://javascript.ru/forum/jquery/35871-jqerry-js-vyborka-s-podsvetkojj.html)

FirstRelict 25.02.2013 08:20

Jqerry&JS выборка с подсветкой
 
Существует список ul в каждом из его li 4 поля input, если вводишь в первое поле ничего не происходит,
при вводе во второе background 1 и 3 input становится красным при заполнении краснго фон вновь стандартный
если заполнены все фон всех инпутов зеленый.

Подскажите плиз кратко путь решения, лучшее что я смог это jqerry на изменение инпута запускается прооверка,
если поле пустое устанавливаю красный фон, заполненное обычный, если заполнены все то зеленый, а вот дальше я встрял...

ksa 25.02.2013 08:44

Цитата:

Сообщение от FirstRelict
Подскажите плиз кратко путь решения

С тебя тестовый пример...

Deff 25.02.2013 09:06

<style>
.red {
  background-color:red;
}
.green {
  background-color:green;
}
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
$(document).ready(function(){
function testInp(sel) {
   var str=''
   $("input",sel).each(function(){
      var a = $(this).attr("data");
       if(!a) a='0'; str+=a;
   });
   if(str=='0100'){
       $("input",sel).eq(0).addClass("red");
       $("input",sel).eq(2).addClass("red");
       return;
   }
   if(str=='1100'&&$("input",sel).eq(0).hasClass("red")){
       $("input",sel).eq(0).removeAttr("class");
       return;
   }
   if(str=='1110'||str=='0000'){
       $("input",sel).removeAttr("class");
       return;
   }
   if(str=='1111'){
       $("input",sel).removeAttr("class");
       $("input",sel).addClass("green");
       return;
   }
}

  var wrp = $("#ul_wrp");
  $("li > input,wrp").on('change input',function(){
      if($(this).val().replace(/\s*/g,'')!='') {
         $(this).attr("data",1);
      } else $(this).removeAttr("data");
        testInp($(this).parent().parent());
  });

  });
  </script>
<div id=ul_wrp>
<ul>
<li><input type=text></li>
<li><input type=text></li>
<li><input type=text></li>
<li><input type=text></li>
</ul>
<ul>
<li><input type=text></li>
<li><input type=text></li>
<li><input type=text></li>
<li><input type=text></li>
</ul>
</div>

danik.js 25.02.2013 10:01

Хм.. Для полноты решения тут не хватает iframe'а...

FirstRelict 25.02.2013 10:24

Спасибо, большое.
Кстати за какой срок люди обычно начинают нормально кодить(быстро и качественно)Я вот уже месяцев 8 ковыряюсь, но мне кажется я очень медленен, это норм?Бросать я конечно не буду, просто интересно, нормальный у меня темп или нет.

ksa 25.02.2013 10:54

Цитата:

Сообщение от FirstRelict
нормальный у меня темп или нет

Если за это платят - нормальный. :D


Часовой пояс GMT +3, время: 08:35.