Используя «это» в сочетании с другими элементами? - PullRequest
0 голосов
/ 28 марта 2011

Я использую PHP и JQuery. Я пытаюсь сделать что-то вроде этого:

$(this + ' .my_child_class').html('test');

У меня есть динамический список элементов, и когда я нажимаю на кнопку, я использую «this», чтобы перейти к текущей группе элементов.

Проблема в том, что я хочу попасть в класс "my_child_class", который находится где-то в текущей группе элементов. JQuery выше не работает.

HTML может выглядеть следующим образом:

<div class="item">
   <div class="container">
      <div class="my_child_class">Content</div>
   </div>
   <input type="submit" />
</div>

<div class="item">
   <div class="container">
      <div class="my_child_class">Content</div>
   </div>
   <input type="submit" />
</div>

Ответы [ 4 ]

1 голос
/ 28 марта 2011

Я предполагаю, что это происходит в обработчике событий - this это элемент DOM, а не строка.Вы, вероятно, хотите это:

$(this).find('.my_child_class').html('test');
0 голосов
/ 28 марта 2011

Вы должны поместить этот код в вашу функцию:

$(document).ready(function() {

  $("div.item > input").bind('click',function() {

    $(this).prev().find('.my_child_class').html('test');

  });

});

Вы можете найти полное решение здесь: http://jsfiddle.net/PLm5a/1/

Привет.

0 голосов
/ 28 марта 2011

Не зная, что на самом деле означает this, я подозреваю, что вам нужно

$(this).find(".my_child_class").html("test");

Возможно, вы захотите взглянуть и на другие функции перемещения , в зависимости от вашегоситуация.

0 голосов
/ 28 марта 2011

Это то, что вы после? Что-то вроде:

$(this).closest(".item").find(".my_child_class").html("test");

прикреплено к кнопке ввода.

...