Найти дочерний элемент по data-attr (jQuery)

337
18 июля 2017, 21:15

Всем привет. Есть следующий блок со всеми элементами с css display: none:

<div class="all_tasks">         
<div data-id="0">
    <input type="hidden" name="taskTitle[0]" value="Задача1">
    <input type="date" name="taskDate[0]" value="2017-07-17">
    <input type="hidden" name="taskComment[0]" value="Задача1">
    <input type="hidden" name="taskAddClient[0]" value="0">
</div>
<div data-id="1">
    <input type="hidden" name="taskTitle[1]" value="Задача2">
    <input type="date" name="taskDate[1]" value="2017-07-18">
    <input type="hidden" name="taskComment[1]" value="Задача2_текст">
    <input type="hidden" name="taskAddClient[1]" value="1">
</div>

Также есть следующая таблица:

<table>
<thead>
    <tr>
        <td>Задача</td>
        <td>Время задачи</td>
        <td></td>
    </tr>
</thead>
<tbody>     
    <tr data-id="0">
        <td>Задача1</td>
        <td> 2017-07-17</td>
        <td><a class="edit_task_link" href="#">Редактировать</a></td>
    </tr>
    <tr data-id="1">
        <td>Задача2</td>
        <td> 2017-07-18</td>
        <td><a class="edit_task_link" href="#">Редактировать</a></td>
    </tr>
</tbody>

Задача: найти по клику на ссылку в таблице элементы в блоке с классом all_tasks, у которых родительский элемент имеет атрибут data-id, равный data-id строки, в которой находилась ссылка. Понимаю, что нужно сделать вот так:

$(document).on('click', '.edit_task_link', function(){
var id = $(this).parent().attr('id');
alert(id);
)};

А что дальше делать? Как найти элемент по его атрибуту id?

Answer 1

Такой селектор должен сработать:

$('.all-tasks div[data-id=" + id + "]');
READ ALSO
saveAs работает только 1 раз

saveAs работает только 1 раз

Нужна функция для сохранения данных в файл, решил использовать библиотеку https://cdnrawgit

319
AJAX.Добавление товаров в корзину

AJAX.Добавление товаров в корзину

Есть код страницы с товарами:

335
Исправление добавленного задания в todo list vue.js

Исправление добавленного задания в todo list vue.js

Надо сделать так, чтобы при изменении в input'е (который появляется при клике на сам таск) изменялся сам таск и изменялся в localStorageВ моём случае...

385