javascript – Ein Klickereignis wird zu einem a-Tag hinzugefügt, und ich möchte dem a-Tag innerhalb dieser Zeit einen Klassenstil hinzufügen
PHP中文网
PHP中文网 2017-06-12 09:24:00
0
2
842

Ein Span-Tag enthält mehrere a-Tags, und die a-Tags werden über Ajax implementiert. Ich möchte dem a-Tag ein Klickereignis hinzufügen, dem a-Tag einen Klassenstil hinzufügen, wenn er klickt, und gleichzeitig die Klassenstile anderer a-Tags löschen

ajax:

$.ajax({type:"post",url:"carbrand/findCarBrandHot",dataType:"json",success:function(data){
                var html="<a class='on' href='' rel='nofollow'>不限</a> ";
                    var listr = "";                        
                    for(var i = 0; i < data.length; i++){                
                            listr+="<a class=''  title=''  onclick='ch()'>"
                                    +data[i].brand_name+" </a>";                                    
                    } 
                    html+=listr;
                    $(".clikbr").html(html);
               }
        });

html:

<span class="clikbr"></span>

Javascript:

 function ch(){
        //方法能触发
        //添加样式
        $(this).addClass("on");  //这种方法不行    
        $(this).addClass("hoverWidgetactive").siblings().removeClass("hoverWidget active");  //也实现不了,
        
        
    };

Es scheint, dass die über Ajax hinzugefügten Tags nicht abgerufen werden können. Ich weiß nicht, wie ich die Tags erhalten kann

PHP中文网
PHP中文网

认证高级PHP讲师

Antworte allen(2)
左手右手慢动作

使用事件委派

$('.clikbr').on('click', 'a', function() {
     $(this).addClass("on");    
     $(this).addClass("hoverWidgetactive").siblings().removeClass("hoverWidget active");  
});
小葫芦

//你可以改成這樣

$.ajax({type:"post",url:"carbrand/findCarBrandHot",dataType:"json",success:function(data){
                var html="<a class='on' href='' rel='nofollow'>不限</a> ";
                    var listr = "";                        
                    for(var i = 0; i < data.length; i++){                
                            listr+="<a class=''  title=''  onclick='ch()'>"
                                    +data[i].brand_name+" </a>";                                    
                    } 
                    html+=listr;
                    $(".clikbr").html(html);
                    //必須在這裡給<a>標籤綁定事件
                    $(".clikbr a").on("click",function(){
                        $(this).addClass("on");  
                                                                      
                     
                     
       $(this).addClass("hoverWidgetactive").siblings().removeClass("hoverWidget active");
                    });
               }
        });
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage