您的位置:首页技术文章
文章详情页

javascript - 在一个a标签内添加了一个单击事件,想在时间里面给这个a标签添加类样式

【字号: 日期:2023-11-09 09:27:59浏览:53作者:猪猪

问题描述

在一个span标签里面有多个a标签,a标签是通过ajax实现的。想在a标签里面添加单击事件,在他单击的时候给这个a标签添加类样式 ,同时删除其他a标签类样式

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'); //也实现不了, };

貌似通过ajax新增的标签获取不到,不知道怎么获取标签

问题解答

回答1:

使用事件委派

$(’.clikbr’).on(’click’, ’a’, function() { $(this).addClass('on'); $(this).addClass('hoverWidgetactive').siblings().removeClass('hoverWidget active'); });回答2:

//你可以改成這樣

$.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'); }); }});

标签: JavaScript