Свяжите функцию jQuery с элементами

Я очень плохо знаком с jQuery и нуждаюсь в некоторой помощи. Я пытаюсь изменить элемент CSS, когда я ввожу текстовое поле. Я применил класс CSS к своим текстовым полям, и у меня есть несколько тегов Div вокруг моих текстовых полей.

Когда пользователь выбирает текстовое поле, я хочу изменить желаемый тег Div.

Это - то, как HTML смотрит

<div class="left">
    <div class="right">
        <input name="myTextBoxID" type="text" id="myTextBoxID" class="myTextBox" />
        <span id="rfInput"></span>
    </div>
</div>

мой jQuery похож на это

<script language="javascript" type="text/javascript">
   $(function () {
       $('.myTextBox').focus(function () {

           $('.box.left').addClass("active");
       }).blur(function () {
           $('.box.left').removeClass("active");
       });
   });
</script>

Теперь jQuery работает и изменяет класс на фокусе и размытости однако, это производит все элементы witht он класс = "myTextBox", как я могу добраться, jQuery для присоединения ко всем элементам однако только запускают изменение CSS в выбранных текстовых полях вне класса элементов?

Любая справка была бы большой!

1
задан user113716 4 June 2010 в 00:01
поделиться

2 ответа

<script language="javascript" type="text/javascript">
   $(function () {
       $('.myTextBox').focus(function () {
           $(this).closest('.left').addClass("active");
       })
       .blur(function () {
           $(this).closest('.left').removeClass("active");
       });
   });


</script>

это относится к элементу, получившему событие.

Таким образом, вы заключаете this в объект jQuery, $ (this) и получаете доступ к предку closest () с назначенным классом.

.closest () - http://api.jquery.com/closest/

2
ответ дан 3 September 2019 в 00:04
поделиться

вы не были так ясны, так что вот моя догадка ...

    $(function () {
       $('.myTextBox').focus(function () {

           $(this).closest('.left').addClass("active");

       }).blur(function () {

           $(this).closest('.left').removeClass("active");

       });
   });
0
ответ дан 3 September 2019 в 00:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: