Я часто храню данные такого типа в теге, например:
Метод тега атрибута
<div id="list">
<a href="/link" post_id="68">Some post</a>
</div>
Затем в jQuery сделайте что-то вроде:
$('#list').delegate('a.delete', 'click', function(event) {
event.preventDefault(); // Stop default click event
// ajax stuff here
// $(this).attr('post_id') = 68
});
Обновление: .attr('post_id')
не работает в IE6.
Альтернативные методы?Хмм ....
Все они используют вышеуказанную функцию делегата.
В выделенном элементе, используя класс или id, для определения данных элемента:
<div id="list">
<a href="/link"><span class="hide post_id">66</span>Some post</a>
</div>
- Доступ по:
$('span.post_id', this).text()
Возможно, одна из худших идей для простых идентификаторов, но если вам нужно хранить сложные данные, добавьте их вэлемент может быть опцией.
В href ...
<div id="list">
<a href="/link/66">Some post</a>
</div>
- Доступ по:
$(this).attr('href').match(/\/([0-9]+)$/)[1]
Этот метод, очевидно, зависит от вашего URL.Это один из самых ненавязчивых методов, если предположить, что ваша структура URL не слишком сложна или часто меняется.
Это идентификатор.Это уникально.Давайте ID:
<div id="list">
<a href="/link" id="post_66">Some post</a>
</div>
- Доступ по:
$(this).attr('id').split('_')[1]
Преимущество этого метода заключается в том, что вы также можете стилизовать элементы на основе определенных идентификаторов- иногда полезно.Это также имеет смысл.Ваш идентификатор уникален.Эта якорная ссылка относится к этой записи, этому уникальному идентификатору, поэтому имеет смысл использовать атрибут id.