我有一个页面上的故事列表,每个页面上都有几个用于不同动作的jQuery按钮。当点击按钮时,我需要知道它被点击的故事。如何知道在列表上下文中点击了哪个jQuery按钮
目前我的每个故事都包含在div
中,ID为story_<story_id>
,然后在处理程序中遍历并解析出ID。
<div id="story_1" class="story">
Blah blah blah
<input type="button" class="report-button" value="Report">
</div>
<div id="story_2" class="story">
Blah blah blah
<input type="button" class="report-button" value="Report">
</div>
<!-- more stories -->
<div id="story_9" class="story">
Blah blah blah
<input type="button" class="report-button" value="Report">
</div>
<script type="text/javascript">
$(function() {
$('.report-button')
.button()
.click(function() {
var id_str = $(this).parents(".story").attr("id");
var id = id_str.slice(6)
alert(id);
});
});
</script>
这有效,但我不知道这种技术是否存在缺点,或者如果有更好的方法。
我也想到了:
- 使用以id为
- 把故事ID的按钮标识和解析,一个隐藏的输入每个故事等形式
id="report_story_123"
有没有一个标准的方法来处理这个问题?
尼斯。我了解了数据属性和jsfiddle。 – cope360 2010-08-22 21:08:47