【问题标题】:I want to get row Id from Table我想从表中获取行 ID
【发布时间】:2022-01-11 02:13:58
【问题描述】:

在我的应用程序中,我已将一些信息加载到表格中。

现在我想在用户点击时获取该行的项目 ID。

这里的 Item.Id 是我想要得到的,但这里我没有分配给任何表格行。 (我认为不需要)。

到目前为止,我还创建了 JavaScript,但我被困在 click 事件中获取 id。

你能帮帮我吗?

到目前为止,我是这样做的:

<div class="table-full-width table-responsive">
<table class="table" id="tblParts">
   <tr>
      <th>
         @Html.DisplayNameFor(model => model.First().PartNo)
      </th>
      <th>
         @Html.DisplayNameFor(model => model.First().PartDescription)
      </th>
      <th>
         @Html.DisplayNameFor(model => model.First().PartModel)
      </th>
      <th>
         @Html.DisplayNameFor(model => model.First().AvaQty)
      </th>
      <th>
         @Html.DisplayNameFor(model => model.First().ReOrderQty)
      </th>
      <th>
         @Html.DisplayNameFor(model => model.First().PartCatogary)
      </th>
      <th>
         @Html.DisplayNameFor(model => model.First().LastUpdated)
      </th>
      <th></th>
   </tr>
   @foreach (var item in Model)
   {
   <tr>
      <td>
         <a href="#">
         @Html.DisplayFor(modelItem => item.PartNo)
      </td>
      <td>
         <a href="#">
         @Html.DisplayFor(modelItem => item.PartDescription)
      </td>
      <td>
         <a href="#">
         @Html.DisplayFor(modelItem => item.PartModel)
      </td>
      <td>
         <a href="#">
         @Html.DisplayFor(modelItem => item.AvaQty)
      </td>
      <td>
         <a href="#">
         @Html.DisplayFor(modelItem => item.ReOrderQty)
      </td>
      <td>
         <a href="#">
         @Html.DisplayFor(modelItem => item.PartCatogary)
      </td>
      <td>
         <a href="#">
         @Html.DisplayFor(modelItem => item.LastUpdated)
      </td>
   </tr>
   }
</table>

这是脚本。它在点击时触发,但我想在用户点击某行时获取项目 ID。

<script type="text/javascript">
   $("#tblParts tr").click(function (event) {
       alert("Row Clicked");
   });
</script>

【问题讨论】:

    标签: javascript c# asp.net-mvc razor


    【解决方案1】:

    其中一个解决方案是:

    <script type="text/javascript">
        $("#tblParts tr").click(function (event) {            
                var cell = this.getElementsByTagName("td")[0];
                alert("PartNo: " + cell.innerText);           
            });
    </script>
    

    【讨论】:

    • 谢谢。这段代码帮助我解决我的问题。做了一些修改,比如我创建了隐藏的 td 并为其分配了行 ID。然后我得到了我想要的数据。
    【解决方案2】:

    要从目标获取 id,您必须在点击代码上执行此操作,如果它有 id,它将抓取它

    function(event){  
      alert(event.target.id)
    }

    【讨论】:

    • 它返回空警报。现在我创建了隐藏字段,并将值分配为 id &lt;input type="hidden" name="mainid" data-id="@item.Id" /&gt; 有没有办法获得这个隐藏的 Id ?
    • 表示被点击的元素没有id
    • 我真的不明白你想用这个做什么你能提供更多细节或更好地描述它
    猜你喜欢
    • 2020-01-30
    • 2015-12-11
    • 2019-11-25
    • 2014-04-19
    • 2018-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-01
    相关资源
    最近更新 更多