JQuery 触发器点击不触发

问题描述 投票:0回答:1

我有一个年份列表,想要选择触发点击的第一个元素,但它没有按我的预期工作。这段代码让我到达我想要触发点击的元素,但它什么也没做,并且控制台中没有错误。

$("#years > span > a").eq(0).trigger("click");

我已将这行代码放在 JavaScript 文件的最后一行,所以我的理解是,在加载所有内容后,应该触发单击。

为什么这没有像我预期的那样工作?

这是我的html:

<div id="years">
  <span><a href="#">2023</a></span> <----- This is the one I want
  <span>•</span>
  <span><a href="#">2022</a></span>
  <span>•</span>
  <span><a href="#">2021</a></span>
  <span>•</span>
  <span><a href="#">2020</a></span>
</div>

了解后端正在构建年份列表可能会有所帮助,因此页面加载时 HTML 是完整的。

这是我的点击处理程序:

$("#years > span > a").on('click', function(e) {
  e.preventDefault();

  $.ajax({
    url:'postsByYear.php',
    type:"GET",
    data:{
      year:$(this).text()
    },
    dataType:"html",
    success:function(data)
    {
      $('#view-posts').fadeOut(500, function() {
        $(this).html(data).fadeIn(500);
        setMonths();
      });
    },
    error:function(error) {
      return alert('System Error');
    }
  });
});
jquery
1个回答
0
投票

就我而言,我所要做的就是

trigger
单击ready函数的inside。我在它的“外部”,所以这就是它没有执行的原因。在这种情况下,这是我自己的疏忽。

© www.soinside.com 2019 - 2024. All rights reserved.