为什么单击此JQuery脚本中的按钮后,此单击事件不起作用?

时间:2018-10-26 08:52:32

标签: javascript jquery

很长一段时间以来,我没有使用 JQuery ,今天我发现了一些问题。我正在使用相当旧的JQuery版本(3.0.0),但无法更新它。

所以我的问题是,在我的HTML代码中,我有这样的按钮:

<button class="btn-link js-delete" data-customer-id="1">Delete</button>

然后这是我的JQuery脚本:

$("#customers").click(".js-delete", function () {
    alert("CLICK !!!");
});

这是我的JSFiddle:https://jsfiddle.net/AndreaNobili/xpvt214o/906659/

问题在于,单击该按钮没有任何反应

我该如何解决这个问题?

5 个答案:

答案 0 :(得分:1)

您缺少将button包裹在一个id值为customers的元素中的方法:

$("#customers").click(".js-delete", function() {
  alert("CLICK !!!");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id='customers'>
<button class="btn-link js-delete" data-customer-id="1">Delete</button>
</div>

但是,建议的方法是直接使用该按钮的类,如果该类对于该按钮而言是唯一的,并且JS代码仅用于该按钮:

$(".js-delete").click(function() {
  alert("CLICK !!!");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="btn-link js-delete" data-customer-id="1">Delete</button>

答案 1 :(得分:0)

尝试一下:

<button class="btn-link js-delete" data-customer-id="1">Delete</button>



$(".js-delete").click(".js-delete", function () {
    alert("CLICK !!!");
});

您的代码选择的元素是#costumers而不是您的按钮,因为它没有与客户的ID

答案 2 :(得分:0)

在这种情况下,选择器是“ .js-delete”。首先,您需要调用选择器,然后调用事件。

$(".js-delete").click(function () {
    alert("CLICK !!!");
});

答案 3 :(得分:0)

您通过ID(#customer)调用了元素 但Button中没有ID属性。 替换buttom元素与此: 删除

答案 4 :(得分:0)

您忘了赋予 id="customers" 按钮。