javascript - 创建事件处理程序时从不同元素获取值

标签 javascript html dom-events

我在页面上列出了一系列隐藏的 contactID 元素,并且我已将事件处理程序分配给附近的 anchor (单击 anchor 会弹出联系人的个人资料)。我希望能够在创建事件处理程序时传入 HIDDEN 元素的值( anchor 可能不在 HIDDEN 元素旁边,因此我不想遍历 DOM)。

<input type="hidden" name="first-contact" id="first-contact" value="1" />
<.. code ..>
<a href="#" class="contact-viewer">View contact</a>

<input type="hidden" name="second-contact" id="second-contact" value="4" />
<.. code ..>
<a href="#" class="contact-viewer">View contact</a>

我目前的做法是将 HIDDEN 元素的 ID 标记放入 anchor 的 REL 属性中,并在运行事件时获取 REL 值。

<a href="#" class="contact-viewer" rel="second-contact">View contact</a>

这很好用,但感觉不太对(我觉得使用 REL 是一种 hack)。有更好的方法吗?

最佳答案

这里通常的策略是为链接提供一个 href 属性,这样,如果客户端上的脚本不可用或失败,服务器就可以满足请求。在这种情况下,所需的值可以位于 href 属性中。

如果脚本可用,请从 href 获取值,取消导航并使用 XHR 或其他方式完成请求。

如果您不想将该链接用作链接,请使用按钮。链接暗示导航到另一个页面,按钮暗示将停留在同一页面上的进程。

关于javascript - 创建事件处理程序时从不同元素获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6287416/

相关文章:

javascript - Linux 下的 Firefox 15.0.1 中未触发 transitionend 事件

javascript - 打字时如何格式化电话号码?

javascript - 在 chrome 和 safari 中附加 onload 事件时 window.open 不起作用

javascript - 滚动过去的 ID 添加类到导航菜单以更改当前类

html - css - head 标签中的样式与 css 文件导入 - 推荐哪个?

javascript - 如何在 JavaScript 中使用 for 循环/单击事件添加多个按钮?

javascript - 将 5 位二进制字符串解码回字符

javascript - 在 Wordpress 中编辑源代码

JavaScript:对象的重组和数组

javascript - 如何使用 API 在不同的卡片上打印不同的标题?