使用 jQuery 的 live() 和包含 next() 的选择器

发布于 2024-09-28 13:51:49 字数 318 浏览 2 评论 0原文

我确实使用 jQuery live() 将“单击”事件绑定到某些图像。这会导致以下内部实时选择器:

#tblViews tbody tr[rel=view_4].next() table.editable.includes span.actions img.remove

当我单击这样的图像时,会发生以下错误:

Syntax error, unrecognized expression: )

我认为问题可能是选择器中的 .next() - 但如何摆脱它?

多谢, 雷莫

I do use jQuery live() to bind a 'click' event to certain images. This results in the following internal live-selector:

#tblViews tbody tr[rel=view_4].next() table.editable.includes span.actions img.remove

When I click on such an image, the following error occurs:

Syntax error, unrecognized expression: )

I think the problem might be the .next() in the selector - but how to get rid of that?

Thanks a lot,
Remo

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你是暖光i 2024-10-05 13:51:49

它确实在文档中说“live”不能这样使用。你需要有一个完整的

$('selector').live( function(){});  

例子,

$('select1').next('select2').live(...); 

这是行不通的。

我假设您正在使用 .next() 因为您想要第二个匹配的 tr。在这种情况下,我建议在选择器中使用 tr[rel=view_4]:eq(1) 。

如果您提供用于绑定实时事件的代码,我应该能够编写一个可以与 jquery live 一起正常工作的版本。

玩得开心 :)

It does say in the documentation the 'live' cannot be used like that. you need to have a complete

$('selector').live( function(){});  

For example,

$('select1').next('select2').live(...); 

will not work.

I'm going to assume you're using the .next() because you want the second matching tr. In this case I suggest using tr[rel=view_4]:eq(1) in the selector instead.

If you provide the code you use to bind the live event I should be able to write a version that will work correctly with jquery live.

Have fun :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文