javascript - 通过ajax,在ul加载了全部数据,添加了ul li 单击事件,可是触发不了。

查看:106
本文介绍了javascript - 通过ajax,在ul加载了全部数据,添加了ul li 单击事件,可是触发不了。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

通过ajax,在ul加载了全部数据,添加了ul li 单击事件,可是触发不了,如果是ul事件的话能触发。

ajax

 /*省市*/
$("#proNum").click(function(){        
        $.ajax({type:"post",
              url:"region/jsonRegion",
              dataType:"json",
              success:function(data){                  
            $("#gj_disProvince").toggleClass("active");
                var listr ="";
                for(var i = 0; i < data.length; i++){
                    listr +="<li class='com-li gj_dispro' proNum='"+data[i].id+"'>"+data[i].placename+"</li>";
                }
                $("#assessPro").html(listr); //添加全部城市            
           }
        
        });
    });

实现图

标签

                <div class="conselect mr-7" id="gj_disProvince">
                    <input class="inputype" readonly="readonly"placeholder="省份"
                        id="proNum" proNum="0">
                    <div class="p-r">
                        <div class="down-box">
                            <ul class="com-ul com-ul-288" id="assessPro">
                            </ul>
                        </div>
                    </div>
                </div>

事件

    /*选择一个省 ,li[class='com-li gj_dispro'] 触发不了*/
    $("ul[class='com-ul com-ul-288']").click(function(){
         alert(1);    
        // 不明白为什么 ul 能触发,li就不行,
        //请教一下如何获取到选择中li的省市和id           
    });

解决方案

$('selector').on('click','childSelector',function(){})
使用 on() 方法添加的事件处理程序适用于当前及未来的元素

这篇关于javascript - 通过ajax,在ul加载了全部数据,添加了ul li 单击事件,可是触发不了。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆