【发布时间】:2011-02-23 16:56:08
【问题描述】:
将参数从 HTML 传递到 jQuery 事件函数的做法是什么。 例如从 db 中获取行的 id:
<tr class="jq_killMe" id="thisItemId-id">
...
</tr>
和 jQuery:
$(".jq_killMe").click(function () {
var tmp = $(this).attr('id).split("-");
var id = tmp[0]
// ...
}
如果我想传递多个参数,最好的做法是什么? 不使用jQuery会更好吗?例如:
<tr onclick="killMe('id')">
...
</tr>
我没有找到我的问题的答案,即使有链接我也会很高兴。 谢谢。
编辑(预解决方案)
所以你建议了两种方法来做到这一点:
- 向元素添加自定义属性 (XHTML)
- 使用属性ID并用正则解析
- 属性 data-* HTML5 中的属性
- 使用隐藏的子元素
我喜欢第一个解决方案,但是...我想(我必须(雇主))生成有效代码。这是一个很好的问题和答案:
So what if custom HTML attributes aren't valid XHTML?
第二个不如第一个漂亮,但有效。所以妥协是……
第三个是未来的解决方案,但这里有很多 CMS,我们必须使用 XHTML 或 HTML4。 (而 HTML5 是一个漫长的过程)
【问题讨论】:
标签: jquery html events arguments