gpt4 book ai didi

jquery - 将参数和值从 HTML 传递到 jQuery(事件)

转载 作者:行者123 更新时间:2023-11-28 05:08:55 24 4
gpt4 key购买 nike

将参数从 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>

我没有找到我的问题的答案,即使有链接我也会很高兴。谢谢。

编辑(解决方案前)

所以你建议了两种方法来做到这一点:

  1. 向元素添加自定义属性 (XHTML)
  2. 使用属性ID并通过正则表达式解析
  3. 属性 data-* HTML5 中的属性
  4. 使用隐藏的子元素

我喜欢第一个解决方案,但是...我想(我必须(雇主))生成有效代码。这是一个很好的问题和答案:
So what if custom HTML attributes aren't valid XHTML?

第二个没有第一个漂亮,但有效。所以妥协是...

第三个是 future 的解决方案,但是这里有很多CMS,我们必须使用XHTML或HTML4。 (而HTML5是漫长的过程)

最佳答案

您可以根据需要的参数数量选择不同的方式。如果您只需要多个,您可以添加自定义属性,但这可能不符合 html。

有时您甚至可能需要像现在这样将值嵌入到 id 中:

<tr class="jq_killMe" id="thisItemId-id">

但我会这样做:

<tr class="jq_killMe" id="thisItemId1">

其中 1 是您的 ID,然后使用 RegEx 而不是进行拆分:

$(".jq_killMe").click(function () {
var fullid= $(this).attr('id);
// do Regex here to either replace or match anything that follows 'thisItemId'
}

关于jquery - 将参数和值从 HTML 传递到 jQuery(事件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2905051/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com