有的时候我们为了体验性和灵活性,会使用js或者jQuery异步获取数据使用append方法追加元素,但是相对以前静态页面写的事件在新追加的元素上面不管用,就算在新追加的标签里面直接添加onclick事件也不起效果
for(var i=0;i<=p_arr.length-1;i++)
{
<span style="white-space:pre"> </span>province_html += '<li οnclick="select_pro()"><span class="ml10">'+p_arr[i]['area_name']+'</span></li>';
}
$("#search-sort-list").append(province_html);
$('#search-sort-list li').click(function()
{
<span style="white-space:pre"> </span>alert(111);//弹不出来
})
原因是因为新追加的元素节点不会帮定click事件。
解决方法:
使用on方法<pre name="code" class="javascript">$('#search-sort-list').on('click','li',function()
{
<span style="white-space:pre"> </span>alert(111);
})
就可以了