当前位置: 代码迷 >> JavaScript >> 如何合并两个onclick函数,并且仅当有人单击“确定”而不是“取消”时才运行它?
  详细解决方案

如何合并两个onclick函数,并且仅当有人单击“确定”而不是“取消”时才运行它?

热度:71   发布时间:2023-06-05 09:28:11.0

我有这样的链接:

<a class="" onclick="delete_image('imageidentifier', 1, 0); 
return confirm('Are you sure you want to delete this image?');">Delete Image</a>

现在的问题是,如果有人单击取消,该图像将被删除。 我该如何预防?

if (confirm('Are you sure you want to delete this image?')){
      delete_image('imageidentifier', 1, 0); 
}

但这不属于html,只需为其创建一个函数并在onclick=''内调用它即可onclick=''

您应该在确认中使用delete_image函数,可以为此使用第三个函数:

<a class="" onclick="askDelete()">Delete Image</a>
function askDelete() {
  if (confirm('Are you sure you want to delete this image?')) {
    delete_image('imageidentifier', 1, 0);
  }
}

但更好的方法是在.js内的此链接上添加事件:

<a class="foo">Delete Image</a>
document.querySelector('.foo').addEventListener('click', function () {
  if (confirm('Are you sure you want to delete this image?')) {
    delete_image('imageidentifier', 1, 0);
 }
});
  相关解决方案