开发者问题收集

点击事件并将值传递给函数

2022-01-19
165

我有一个调用函数的点击事件,但行不通:

571588026

错误:未介绍的参考文献:deleteorderDetail未在htmltablecellement.onclick

互联网上的搜索显示我必须使用addeventListener 但是在这种情况下,我不能将 @item.detailid 传递给函数

2个回答

我们已经在问题的评论中提到了您的语法问题

但是如果您这样做了

$(".product-remove").on("click", function() { 
  const $parent = $(this).closest("tr"), detailId = $parent.attr("id");
  $.get(`/Account/RemoveCart?orderDetailId=${detailId}`,function()) {
    $parent.hide('slow'); 
  });
});

那么就不需要内联处理程序或传递 ID

上面的代码将替换您发布的所有代码

如果您动态添加详细信息,则需要委托给最近的静态容器

$("#tableId").on("click",".product-remove", function() { 
  const $parent = $(this).closest("tr"), detailId = $parent.attr("id");
  $.get(`/Account/RemoveCart?orderDetailId=${detailId}`,function()) {
    $parent.hide('slow'); 
  });
});
mplungjan
2022-01-19

您有一些 语法 错误。

您没有关闭函数的

        function DeleteOrderDetail(orderDetailId) {
        debugger;
        $.get("/Account/RemoveCart?orderDetailId=" + orderDetailId,
            function () {
                $("#" + orderDetailId).hide('slow');
            });
         }

并且在代码的这一部分,您应该在 '' 中传递数据。

 <td class="product-remove" onclick="DeleteOrderDetail('@item.DetailId')"><a><span class="ion-ios-close"></span></a></td>
Amirreza
2022-01-19