0

我有一个分页页面。第一次,数据和分页链接是从服务器生成的,并显示在我的视图中。我有一个下拉列表。每次我想在下拉列表中更改数据和分页链接时在没有使用 jquery、ajax、json 加载页面的情况下更改。我已经成功更改了数据和链接。我已经根据服务器第一次返回创建了分页链接。但是这次我无法触发ul>li>a元素。我不知道为什么!!!。但是相同的 js2 代码适用于服务器返回的分页。

Html:服务器返回

 <div class="pagination">
    <ul>
       <li class="disabled"><a >1</a></li>
       <li><a href="http://localhost:8070/poralekha/home/universities/5">2</a></li>
    </ul>  
 </div>

这行得通。

JS1:用于分页:

  var pagination=" ";
  pagination+="<ul >";

  for(var i=1; i<=data['varsities'].length ;i++)
    {
        pagination+="<li class='disabled'>";
        pagination+="<a href='#' class='page'  >";
        pagination+=i;
        pagination+="</a>";
        pagination+="</li>";

    }
   pagination+="</ul>";

  $('.pagination').html(pagination );

这里 class='page' 已用于仅在单击 .page 时获取 i 的值

Js2:两种分页通用

   $(".pagination > ul >li > a").click(function(event){
        event.preventDefault();
        alert("This index is clicked.");
    });

或者

      $(".page").on('click', function(event){
          event.preventDefault();
          alert(" clicked.");
      });

简而言之,我想在单击 .page 时触发。我快要生气了。请问我该如何解决这个问题?谢谢。

4

1 回答 1

1

尝试使用on()方法而不是click()

    $(".pagination > ul >li > a").on('click', function(event){
        event.preventDefault();
        alert("This index is clicked.");
    });

对于旧版本的 jQuery 使用live()方法:

    $(".pagination > ul >li > a").live('click', function(event){
        event.preventDefault();
        alert("This index is clicked.");
    });
于 2013-06-26T08:01:05.113 回答