изменение цвета фона где совпадает цифра
Подскажите, необходимо изменить цвет фона div'a где цифра соответствует цифре в input'e.
Т.е есть: <div class="">1</div> <div class="">2</div> <div class="">3</div> и есть <input type="text" value=""> надо что бы когда в input писал цифру 1 то скриптом во всех div'aх где цисло 1 задний фон менялся на красный Пытаюсь сделать jquery. Но не получается. Подскажите плиз |
Цитата:
|
у меня получилось проверить на соответствие только для чисел т.е:
<input type="text" id="a" value="2"> <input type="text" id="b" onkeyup="document.getElementById('result').innerHTML = (parseFloat(document.getElementById('a').value)||0) - (parseFloat(this.value)||0)"> <div id="result"></div> ну а дальше думал сделать если ноль то окрасить фон в цвет. Но думаю это не совсем правильно а правильнее именно проверять на соответствие что бы если input равен div'у задать в этом div'e красный фон |
Вот сделал вот так:
<script type="text/javascript" src="http://yandex.st/jquery/1.7.2/jquery.min.js"></script> <script> $(document).ready(function(){ $(".data-tst").each(function () { var dat=$(this).text().split('.'); тут как пытаюсь проверить если dat равно text то сделать фон красный, но не получается }); }); </script> <div class="data-tst"> <span>1</span></div> <div class="data-tst"> <span>2</span></div> <div class="data-tst"> <span>3</span></div> <input id="text" type="text" value=""> |
вот так не срабатывает:
<script type="text/javascript" src="http://yandex.st/jquery/1.7.2/jquery.min.js"></script> <script> $(document).ready(function(){ $(".data-tst").each(function () { var dat=$(this).text().split(','); if(dat="2")$(this).css({"background-color":"red"}); }); }); </script> <div class="data-tst"> <span>1</span></div> <div class="data-tst"> <span>2</span></div> <div class="data-tst"> <span>3</span></div> |
Цитата:
|
Цитата:
|
я пытаюсь проверить что бы везде где
<div class="data-tst"><span>2</span></div> задний фон окрасился в красный цвет |
djonA,
<script type="text/javascript" src="http://yandex.st/jquery/1.7.2/jquery.min.js"></script> <script> $(function(){ $(".data-tst:contains('2')").css({"background-color":"red"}) }); </script> <div class="data-tst"> <span>1</span></div> <div class="data-tst"> <span>2</span></div> <div class="data-tst"> <span>3</span></div> |
спасибо большое то что нужно, только подскажите как вводить число 1 или 2 или 3 из
<input type="text" value="" id="text"> пробую так что то не срабатывает: <script type="text/javascript" src="http://yandex.st/jquery/1.7.2/jquery.min.js"></script> <script> $(function(){ var a=document.getElementById(text).value $(".data-tst:contains(a)").css({"background-color":"red"}) }); </script> <div class="data-tst"> <span>1</span></div> <div class="data-tst"> <span>2</span></div> <div class="data-tst"> <span>3</span></div> <input type="text" value="" id="text"> |
Цитата:
var a=document.getElementById('text').value Цитата:
$(".data-tst:contains('"+a+"')").css({"background-color":"red"}); |
:write: ещё нужна функция которая среагирует на ввод данных
|
сделал вот так, все работает ок, только проблема если выбрать 2 а потом 3 то красное 2 и 3, а надо что бы выделялось только то что сейчас написано (т.е или 2 или 3 или 1):
<script type="text/javascript" src="http://yandex.st/jquery/1.7.2/jquery.min.js"></script> <script> function gog() { $(function(){ var a=document.getElementById('textx').value; if (a != ""){ $(".data-tst:contains('"+a+"')").css({"background-color":"red"});} });} </script> <div class="data-tst"> <span>1</span></div> <div class="data-tst"> <span>2</span></div> <div class="data-tst"> <span>3</span></div> <input type="text" id="textx" value="" onkeyup="gog();"> |
djonA,
а назначить пусто всем .data-tst перед тем как назначить нужному |
Красота то что нужно! Спасибо огромное
|
Часовой пояс GMT +3, время: 03:28. |