0

我是 Javascript 新手。我希望在单击 div 中的链接时禁用 div 中的所有其他链接。如果我单击该 div 中的任何链接,则该 div 中的其他链接应禁用且不可单击。

此代码不会在单击任何按钮时使链接无法单击。如果单击任何链接,则该 div 中的其他链接应禁用且不可单击。例如,如果点击接受链接,则接受、拒绝和还价链接应该是不可点击和禁用的。

输出 输出

function disableButton() {
  document.querySelector("#notify-div a").removeAttribute("href");

}
<div id="notify-div">
  user_name has requested a bid price of bid for quantity of qty for mileage mileage_name of truck truck_name.
  <br> <a href='/truckianAccept/".$lastId."' id='accept' class='btn btn-primary' onclick='disableButton();'>Accept </a>
  <a href='/truckianDecline/".$lastId."' id='decline' class='btn btn-primary' onclick='disableButton();'>Decline </a> <a href='/wstCounterOffer/".$lastId."' id='counter' class='btn btn-primary' onclick='disableButton();'>Counter Offer </a>";
</div>

4

1 回答 1

1

您没有删除href,而是设置了一个在 css 中捕获指针事件的类。

function disableButtons() {
  const links = document.querySelectorAll("#notify-div a");

  links.forEach(function(link) {
    link.classList.add('disabled');
  });
}

CSS:

.disabled {
  pointer-events: none;
}

请注意,这href不会onClick一起工作。您应该将特定函数传递给处理该功能并随后禁用按钮的每个链接。

于 2021-11-17T07:06:40.597 回答