单击链接不会';不要在jQuery中启动我的脚本

单击链接不会';不要在jQuery中启动我的脚本,jquery,Jquery,我有以下资料: <div class="controls-buttons"> <a id="level-1" href="#">1</a> <a id="level-12"href="#">12</a> </div> $(document).ready(function() { $('body').on('click', 'a#leve

我有以下资料:

        <div class="controls-buttons">
            <a id="level-1" href="#">1</a>
            <a id="level-12"href="#">12</a>
        </div>
$(document).ready(function() {
    $('body').on('click', 'a#level-1', function () {
        alert("level-1");
        $('tr.level-1').toggle();
    });
})

但是,当我单击链接时,没有显示警报。我的设置方式有问题吗?

如果锚点是动态生成的,您应该委派单击事件,请尝试以下操作:

        <div class="controls-buttons">
            <a id="level-1" href="#">1</a>
            <a id="level-12"href="#">12</a>
        </div>
$(document).ready(function() {
    $('body').on('click', 'a#level-1', function () {
        alert("level-1");
        $('tr.level-1').toggle();
    });
})

如果锚定是动态生成的,则应委派单击事件,请尝试以下操作:

        <div class="controls-buttons">
            <a id="level-1" href="#">1</a>
            <a id="level-12"href="#">12</a>
        </div>
$(document).ready(function() {
    $('body').on('click', 'a#level-1', function () {
        alert("level-1");
        $('tr.level-1').toggle();
    });
})

您应该将代码放入,以便在DOM完全加载时附加事件

$(document).ready(function() {
  $('a#level-1').click(function () {
      alert("level-1");
      // all trs with level-1 class inside abc table
      $('tr.level-1').toggle();
  });

  $('a#level-12').click(function () {
      alert("level 12");
      // all trs with level-1 or level-2 class inside abc table
      $('tr.level-1, tr.level-2').toggle();
  });
});

您应该将代码放入,以便在DOM完全加载时附加事件

$(document).ready(function() {
  $('a#level-1').click(function () {
      alert("level-1");
      // all trs with level-1 class inside abc table
      $('tr.level-1').toggle();
  });

  $('a#level-12').click(function () {
      alert("level 12");
      // all trs with level-1 or level-2 class inside abc table
      $('tr.level-1, tr.level-2').toggle();
  });
});

工作正常:。请给出一个完整的例子,展示你所看到的行为。你检查过JavaScript控制台中的错误了吗?我想现在发生的是在创建警报链接之前出现警报的代码。有没有什么方法可以让我在链接不存在的情况下也能做到这一点?效果很好:。请给出一个完整的例子,展示你所看到的行为。你检查过JavaScript控制台中的错误了吗?我想现在发生的是在创建警报链接之前出现警报的代码。有没有什么方法可以让我在链接还没有的情况下也能做到这一点?
表是从哪里来的?如果OP的代码没有这样做,为什么会这样呢?因为在OP通过ajax添加内容的情况下,它使用事件委托。
tr
s意味着有一个表。没有任何东西表明链接将位于表内。表
从何而来?如果OP的代码没有这样做,为什么会这样呢?因为在OP通过ajax添加内容的情况下,它使用事件委托。
tr
s表示有一个表。没有任何东西表明链接将位于表内。