我被困在非常正常的环境中。我有由YII CLINK PAGER分页小部件生成的HTML代码:

<ul class="yiiPager" id="yw0">
      <li class="first hidden"><a href="/advisory_system/administrator/index.php/specialCategory/gridview?optget_grid=&amp;analysis_type=4&amp;_=1410520989427">&lt;&lt; First</a></li>
      <li class="previous hidden"><a href="/advisory_system/administrator/index.php/specialCategory/gridview?optget_grid=&amp;analysis_type=4&amp;_=1410520989427">&lt; Previous</a></li>
      <li class="page selected"><a href="/advisory_system/administrator/index.php/specialCategory/gridview?optget_grid=&amp;analysis_type=4&amp;_=1410520989427">1</a></li>
      <li class="page"><a href="/advisory_system/administrator/index.php/specialCategory/gridview?optget_grid=&amp;analysis_type=4&amp;_=1410520989427&amp;page=2">2</a></li>
 </ul>


并且我想要AJAX分页来满足我的要求,以便我编写了Jquery代码:

 $("ul.yiiPager li.page a").on('click',function (e){
        e.preventDefault();
        alert($(this).attr('href'));
        return false;
        loadlistData($(this).attr('href'));
    });


但是通过单击任何<a>标记,它将重定向到href中给定的LINK,以防止我使用了e.preventDefault();,但它仍未出现在JQuery代码中,并且未显示警告。

请帮忙。提前致谢。

最佳答案

由于您的定位标记是动态创建的。您需要使用事件委托。因为元素应该在事件绑定时出现在dom上。在事件委托的情况下,事件绑定到dom上显示的document或父元素

$(document).on('click', "ul.yiiPager li.page a", function(e) {
    e.preventDefault();
    alert($(this).attr('href'));
    loadlistData($(this).attr('href'));
});

关于javascript - 防止标签重定向到URL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25807349/

10-12 14:20