jQuery считывает атрибуты данных, скрывает / показывает правильный div

#jquery #hide #show #custom-data-attribute

#jquery #скрыть #показать #пользовательский атрибут данных

Вопрос:

Я пытаюсь создать таблицу с атрибутами данных в строках и возможностью отображать divs с тем же атрибутом данных по щелчку. Я мог бы добавить больше атрибутов данных, если это упростит / умнее функции jquery.

Нужна помощь, чтобы все было хорошо 🙂

Заранее спасибо!

РЕДАКТИРОВАТЬ: ссылка на jsFiddle:http://jsfiddle.net/MXpnQ /

 $(".productRow").click(function () {
 $(this).parent().hide("slow"); //hides the fundListContainer
 --function to show the correct fundInfoContainer--?
});

$(".backToCorrectListButton").click(function () {
 --function to hide the fundInfoContainer and show the correct fundListContainer--?
});

<div class="fundListContainer">
<table>
 <tr class="productRow" data-fundId="1">
  <td></td>
  <td></td>
 </tr>
 <tr class="productRow" data-fundId="2">
  <td></td>
  <td></td>
 </tr>
</table>
</div>

<div class="fundInfoContainer" data-fundId="1" style="display: none">
 <div class="backToCorrectListButton">back to list</div>
</div>

<div class="fundInfoContainer" data-fundId="2" style="display: none">
 <div class="backToCorrectListButton">back to list</div>
</div>
  

Ответ №1:

Конечно, вы можете!

 $(".productRow").click(function () {
   $(this).parent().hide("slow"); //hides the fundListContainer
   $("[data-fundId=" $(this).data('fundId') "]").hide();
});
  

Если вы хотите выбрать элемент по любому из его атрибутов (data-attr или нет), используйте обозначение

$("[имя_пользователя=значение]")

Смотрите http://api.jquery.com/attribute-equals-selector /

РЕДАКТИРОВАТЬ: посмотрите, хотите ли вы этого

http://jsfiddle.net/MXpnQ/3/

Комментарии:

1. Мне нужно показать fundInfoContainer, поэтому я изменил ваш код с «скрыть» на «показать». Но это не работает.

2. Это потому, что он не собирает данные из атрибута данных в TR.

3. Я проверю это. Подождите секунду.