繁体   English   中英

jQuery访问listview-> ul-> li-> span-> img

[英]jQuery accessing listview->ul->li->span->img

这是我的li简码。

<li>
    <a href='#'><img src='img.png'/>
        <h2 style='margin-top: 0px; padding-top: 0px'>test</h2>
        <p><strong>{</strong><label>test</label><strong>}</strong></p>
        <p><strong>test</strong></p>
        <p><strong style='font-size: 17px; color: #fff'>10</strong>
        <br/><span id='onoff'><img src='on.png'/></span>
        <span id='delete'><img src='abc.png'/></span></p>
    </a>
</li>

如您所见, li在整个html中都包含一个<a href> ,单击该文件将触发一个文件。 就是说,我想检测span内图像的点击,它们分别是<span id='onoff'><span id='delete'>

到目前为止,这是我一直尝试的结果。

$('#page-main-listview ul li span').on("click", function(){
    if(($this).attr("id") == 'onoff'){
        // I dont know what to put here
        // I need to find img now and trigger 'onClick()'
    }
});

编辑:我想我已经解决了这个问题,这种方式:

$('#page-main-listview').delegate('img', 'click', function(){
    $atrr = $(this).attr("name");
    alert($atrr);
    if($atrr == 'on'){

    }
});

您正在使用范围ID而不是列表中的类,这使我相信添加更多列表元素时会遇到问题。

为了<span data-tag="onoff" class="clickMe"> ,第一个图像链接为<span data-tag="onoff" class="clickMe"> ,第二个图像链接为<span data-tag="delete" class="clickMe"> 然后,您可以轻松遍历以下内容:

$('.clickMe').click(function() {
    alert($(this).data('tag'));
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM