Бритва/HTML (многие из них):Jquery каждый в случае OnClick
<div class="directory-item" id="@item_id" name="@item_name" style="padding-left: @(indent_level)px; display: @(display)">
<i class="fa @icon_type"></i>
@item.ItemName (id: @item_id, name: @item_name, level: @item.Level)
<i class="fa fa-angle-right float-right"></i>
</div>
Javascript:
$(".directory-item").click(function() {
$('div[name*=' + this.id + ']').each(function() {
if (this.attr('display') == "none") {
this.show();
} else {
this.hide();
}
});
});
Основной вопрос: как вы положили "каждый" внутри "щелчок" событие и ссылаться на «каждый» элемент (каждый раз, когда он обращается к элементу) с «этим»? Может быть, я не должен использовать каждое утверждение, но что-то еще?
yes.you должен использовать 'this' или даже обернутый jQuery элемент этого' $ (this) 'для доступа к кликнутому элементу. Затем вы можете получить доступ к относительным элементам, используя такие методы, как 'ближайшее()', 'find' и т. Д. – Shyju
Как бы вы переписали выше, используя find? В основном, я пытаюсь взять идентификатор div, который был нажат, и найти все div с именем, содержащим этот id, а затем показать/скрыть их. – gunslingor
У вас не должно быть более одного элемента с тем же значением идентификатора! Это недопустимый html. Чего вы пытаетесь достичь? – Shyju