Вход

Просмотр полной версии : Проблема при взятии id


red-nicolas
06.09.2012, 10:01
Есть форма:

<label for="1i">Url</label>
<input class="input_text" id='1i' value="" name='' type='text' size='70'>


При получении фокуса хочу менять класс инпута и лабел, использую такой код:


$(".input_text").focus(function(){limitFocus($(this),225)});

function limitFocus(b,maxLen) {
$("label[for='" +b.id + "']").toggleClass("onlabel");
b.prev('label').toggleClass("onlabel");
b.toggleClass("oninput");
b.next('span').first().fadeIn(500).text(maxLen-b.val().length);
}


Все работает, кроме лабел. Лабел не меняется команда "b.id" не берет id, не понимаю почему?

yura_remnev
06.09.2012, 10:23
У обернутого элемента $(this) нет свойства ID
свойство ID есть у необернутого this
Поэтому, либо делайте $("label[for='" +b[0].id + "']"), либо передавайте this без обертки $(".input_text").focus(function(){limitFocus(this,225)});