javascript - 将详细信息按钮添加到动态 HTML 列表

标签 javascript c# jquery html

我有一个使用过滤数据动态生成的 HTML 列表。

<tbody>
            @{
                foreach (var item in listado.Where(x => x.Raw != null)) {
                    <tr>
                        <td>@item.Id</td>
                        <td>@item.Usuario</td>
                        <td>@item.NIF_CIF</td>
                        <td>
                            @if (!(String.IsNullOrEmpty(item.Telefono)) && !(String.IsNullOrWhiteSpace(item.Telefono))) {
                                @item.Telefono
                            } else {
                                @Html.Raw("No disponible")}
                        </td>
                        <td>@Math.Round(item.PrecioTotal)&nbsp;&euro;</td>
                        <td>@item.FechaCreacion.ToShortDateString()</td>
                        <td>
                            <button id="detalles@(item.Id)">Detalles</button>
                        </td>
                    </tr>
                    <tr id="vistaDetalles@(item.Id)" hidden>
                        <td>Detalles del presupuesto</td>
                    </tr>
                }
            }
        </tbody>

我已经尝试使用 item.Id 标记按钮,然后在此脚本中指向它:

<script>
$("document").ready(function (Id) {
    $("#detalles"+ Id).click(function (Id) {
        $("#vistaDetalles" + Id).show();
    });
});</script>

我也尝试过不标记它们并捕获所有按钮(删除 +Id 部分)和相同的技术来捕获所有隐藏的 tds,但没有任何效果。我究竟做错了什么?另外,您能否推荐一些学习 Material ,以便我可以更清楚地了解这部分内容? 提前致谢。问候。

最佳答案

您可以为此目的使用数据属性

HTML

<button class="detalles" data-itemid="@item.Id">Detalles</button>

jQuery

$(".detalles").on("click",function(){
   var itemId = $(this).data('itemid');
   $('#vistaDetalles'+itemId).show();
});

关于javascript - 将详细信息按钮添加到动态 HTML 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52004345/

相关文章:

javascript - 在下拉列表中发布值并更新到 mysql

javascript - 复制期间文本区域格式丢失

c# - .net Distinct() 和复杂条件

javascript - 如何在Jquery html元素属性中附加字符串变量

javascript - 为什么这个 js IF 条件永远不会计算为 true?

c# - 如何使用 LINQ 在 XML 中按名称获取多个元素

javascript - ASP.Net:跨浏览器操作

javascript - 检查一个元素是否在 jquery 中有一个特定的类不起作用

Jquery 改变类属性

javascript - 动画结束时执行动画