【问题标题】:Using jQuery in table to display single cell contents of selected row outside of table在表格中使用jQuery在表格外显示选定行的单个单元格内容
【发布时间】:2011-06-02 14:45:49
【问题描述】:

这实际上是我在循环中的表格:

<table id="tblMyTable">
  <tr>
     <td><%= attachment.Name %></td>
     <td><%= attachment.Description %></td>
     <td>
        <a id="clickPreview" href="#">Preview</a>
        <div id="divAttachmentContents" style="display:none;"> <%= attachment.ContentsAsHtml %>
        </div>
     </td>
   </tr>
</table>

从这里我得到多行数据。我想在行的最后一列有一个预览按钮,它将“预览”页面下方的 div 中的内容。 我认为我应该将内容渲染到隐藏单元格以使其快速显示。

我需要知道如何告诉 jQuery 我所在的行 - 并获取最后一个单元格的文本。

我需要的要点是:

    $('#clickPreview').click(function () {
        var newContent = $('#divAttachmentContents').text();
        $('#divAttachmentPreview').html(newContent);
    });

但这仅适用于第一行。 我可能需要做类似的事情

<div id="<%= "divAttachmentContents_" + attachment.Id %>" style="display:none;"> <%= attachment.ContentsAsHtml %> </div>

但我不确定。这可能类似于This question 任何帮助将不胜感激!

【问题讨论】:

  • 如果您有很多行,我建议不要使用 ID。
  • 真的 - 我没想到......谢谢你的意思。我会有很多行,这就是为什么这是一个挑战。

标签: javascript jquery datatable


【解决方案1】:

您可以为锚分配一个类。这将使工作更容易。例如

$('.clickPreviewClass').click(function () {
    var newContent =$(this).next("div").text();
    $('#divAttachmentPreview').html(newContent);
});

假设clickPreviewClass 是您为锚指定的类的名称。

【讨论】:

  • 最终使用了 $('.clickPreview').click(function () { var newContent = $(this).next(".divAttachmentContents").text(); $('#divAttachmentPreview ').html(newContent); });并添加类而不是 ID。感谢您的澄清。
猜你喜欢
  • 2012-09-05
  • 2017-10-08
  • 1970-01-01
  • 1970-01-01
  • 2011-06-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-08
相关资源
最近更新 更多