使用 jQuery 获取“onclick”的值?

新手上路,请多包涵

是否有可能通过 jQuery 获取 — 标签的 onClick A 标签的当前值?

例如,我有:

 <a href="http://www.google.com" id="google" onclick="alert('hello')">Click</a>

我想获取 onclick 代码,以便我可以将其存储以备后用(因为我将暂时更改 onclick 事件)。

是否可以做类似的事情:

 var link_click = $("#google").onclick;

或者:

 var link_click = $("#google").click;

以便稍后在我的代码中我可以重新应用该代码,或者 eval() 如有必要?

原文由 Mike Trpcic 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.2k
2 个回答

我从来没有这样做过,但它会这样做:

 var script = $('#google').attr("onclick")

原文由 mkoryak 发布,翻译遵循 CC BY-SA 2.5 许可协议

mkoryak 是正确的。

但是,如果使用更现代的方法(不使用 onclick )将事件绑定到该 DOM 节点,则此方法将失败。

如果那是您真正想要的,请查看 此问题 及其可接受的答案。

干杯!


我又看了一遍你的问题。

我想告诉你:不要使用 onclick , onkeypress 和类似的东西来绑定事件。

使用更好的方法,如 addEventListener() 将使您能够:

  1. 向特定事件添加多个事件处理程序
  2. 有选择地删除一些听众

而不是实际使用 addEventListener() ,你可以使用 jQuery 包装器,比如 $('selector').click()

再次欢呼!

原文由 jrharshath 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题