在jquery中手动附加事件有任何限制吗?
我在应用程序中使用picnet tablefilter Tablefilter为每列生成一个输入。在输入中输入一些字符后,将触发过滤 为了修复标题,我复制了一个标题,并将其放置在tablefilter使用的标题上方,位置为:fixed 我用id=my\u filtertable\u filter\u 3而不是id=filtertable\u filter\u 3构建了相同的输入,如下所示:在jquery中手动附加事件有任何限制吗?,jquery,events,javascript-events,tablefilter,Jquery,Events,Javascript Events,Tablefilter,我在应用程序中使用picnet tablefilter Tablefilter为每列生成一个输入。在输入中输入一些字符后,将触发过滤 为了修复标题,我复制了一个标题,并将其放置在tablefilter使用的标题上方,位置为:fixed 我用id=my\u filtertable\u filter\u 3而不是id=filtertable\u filter\u 3构建了相同的输入,如下所示: $( '#fixed_table thead' ).append( '<tr class="filt
$( '#fixed_table thead' ).append( '<tr class="filters">' + $( '#container thead .filters' ).html() + '</tr>' );
$( '#fixed_table thead .filters input' ).each( function( index )
{
$( this ).attr( 'id', 'my_' + $( this ).attr( 'id' ) );
});
在试图像这样捕捉这一事件时,它似乎起到了作用:
$( '#filtertable_filter_3' ).keyup( function()
{
alert( 'event caught' );
});
我的问题:
这是一个绝对错误的解决问题的方法,还是我只是没有启动正确的事件
问题:
正如在下面的评论中所说:警报被触发,但是过滤器没有过滤,输入值被填充 没有发现我应该触发什么事件,但将原始输入附加到固定头,它似乎正在工作。所以我的解决方案是一个巨大的杀伤力,至少我学到了很多关于事件和事件处理程序的知识 如果有人使用picnet tablefilter并希望制作一个固定的表头,使用我的JSFIDLE中的css和html就足够了
$( '#okno #filtertable thead .filters' ).appendTo( '#fixed_table thead' );
对我来说,这似乎是处理这种情况的正确方法。你说它似乎在工作,但我只是没有触发正确的事件,那么你的问题是它触发警报但没有停止原始功能吗?嘿,谢谢你的评论,我不敢相信,但忘记写问题:警报已触发,但过滤器未触发。否。DOM看起来像这样。$'正文固定了表格标题。过滤器为“可见”标题输入我的过滤器表格。对于用户将输入她/他想要筛选DOM的字符串的实际输入,如下所示:$'body container filtertable hidden_table.filters inputfitertable_filter_3'否,我之前的评论中存在ctrl+v错误。在添加“my_”前缀之前,它们只共享一个id一小段时间,如我问题中的第一段代码所示。如果这可能有帮助的话,固定表与实际表是分开的。
$( '#okno #filtertable thead .filters' ).appendTo( '#fixed_table thead' );