如何在JQuery的同一<tr>中从另一个<td>引用一个<td>?

学习者

我有一个具有以下结构的HTML表:

<tr>
   <td>123</td>
   <td ondblclick="makeeditable(this);">this is some text</td>
   <td><span ondblclick="makeeditable(this);">this is some more text</span><span>flag</span></td>
</tr>

我写一个jQuery代码段,使第二<td>和第一<span>,第三<td>用户可编辑双击(对于它的价值,正在动态生成的表):

function makeeditable(cell){
    var OriginalContent = $(cell).text();
    $(cell).html("<input id='editcell' class='input' type='text' value='" + OriginalContent + "' />");
    $(cell).children().first().focus();
    $(cell).children().first().keypress(function (e) {
        if (e.which == 13) {
            var newContent = $(this).val();
            $(this).parent().text(newContent);
        }
    });
    $(cell).children().first().blur(function(){
        $(this).parent().text(OriginalContent);
        $(this).parent().removeClass("cellEditing");
    });
}

使用上面的功能,我成功​​地使单元格可编辑。不过,现在我需要以某种方式获取(文本第一内侧行参考号<td>123刚编辑的单元格在这个例子中)。我的问题是,一个人如何可以参考第一<td>行从第二的情况下<td>在同一行,并从那<span>内又<td>在同一行的?

里克·希区柯克

访问第一TD行中的任一TD或者SPAN,使用.closest('tr').find('td:first')

这是您的代码的简化版本:

$('.editable ').dblclick(function() {
  var $self= $(this),
      OriginalContent = $(this).text();

  $self.closest('tr').find('td:first').text('Editing');
  
  $self
    .html('<input class="input" type="text" value="' + OriginalContent + '"/>')
    .find('input')       //the following methods now refer to the new input
    .focus()
    .keypress(function(e) {
      if (e.which === 13) {
        $self.text($(this).val());
      }
    })
    .blur(function() {
      $self.closest('tr').find('td:first').text('Double-click to edit');
    
      $self
        .text(OriginalContent)
    });
});
td {
  border: 1px solid #ddd;
}

.editable {
  background: yellow;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
  <tr>
    <td>Double-click to edit</td>
    <td class="editable">this is some text</td>
    <td><span class="editable">this is some more text</span><span>flag</span>
    </td>
  </tr>
</table>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery:如何将TD移至另一个TR?

来自分类Dev

jQuery:如何将TD移至另一个TR?

来自分类Dev

如何从另一个子 td 元素检查父 tr 元素内的 td 元素的值

来自分类Dev

从$(this)元素获取tr中的第一个td

来自分类Dev

<tr>中第一个<td>的CSS样式

来自分类Dev

jQuery:第一个tr少于X td

来自分类Dev

根据另一个TD元素,如何更改JQuery Datatables TD元素中的图标?

来自分类Dev

如何选择<tr>中的第一个和最后一个<td>?

来自分类Dev

移动同一个表中另一个TD中的TD内容

来自分类Dev

每个tr的第一个td值

来自分类Dev

每个tr的第一个td值

来自分类Dev

取一个输入值,乘以<td>的内容,并使用jQuery在另一个<td>中显示结果

来自分类Dev

Xpath问题-无法从一个td遍历到另一个td

来自分类Dev

从一个td取值到另一个td?

来自分类Dev

选择TR时如何向TR中的每个TD添加一个类

来自分类Dev

从最后一个<tr>的第一个<td>中选择innerHTML-jQuery

来自分类Dev

除了最后一个,如何在tr中的所有td中使用each()?

来自分类Dev

在同一<tr>中将目标<td>

来自分类Dev

如何基于xpath在同一行中的另一个td文本选择一个td值

来自分类Dev

如何根据jQuery中的另一个TD元素更改html表TD元素中的图标?

来自分类Dev

Yii2:如何在一个 TR 内添加多个 TD 行?

来自分类Dev

Scrapy:如何在这个 `tr` 中选择下一个 `td`?

来自分类Dev

如何在jQuery中没有第一个和最后一个TD的情况下处理TR点击?

来自分类Dev

特定表格中每个tr的第一个td的CSS

来自分类Dev

让<tr>中的最后一个<td>表现得像新行

来自分类Dev

Javascript / HTML将图像从HTML <td>传递到另一个<td>

来自分类Dev

根据来自ajax的另一个td名称设置td值

来自分类Dev

如何在CSS中使用tr类名在tr中找到第一个td?

来自分类Dev

将第一个Tr移至thead并使用jquery将td替换为th

Related 相关文章

  1. 1

    jQuery:如何将TD移至另一个TR?

  2. 2

    jQuery:如何将TD移至另一个TR?

  3. 3

    如何从另一个子 td 元素检查父 tr 元素内的 td 元素的值

  4. 4

    从$(this)元素获取tr中的第一个td

  5. 5

    <tr>中第一个<td>的CSS样式

  6. 6

    jQuery:第一个tr少于X td

  7. 7

    根据另一个TD元素,如何更改JQuery Datatables TD元素中的图标?

  8. 8

    如何选择<tr>中的第一个和最后一个<td>?

  9. 9

    移动同一个表中另一个TD中的TD内容

  10. 10

    每个tr的第一个td值

  11. 11

    每个tr的第一个td值

  12. 12

    取一个输入值,乘以<td>的内容,并使用jQuery在另一个<td>中显示结果

  13. 13

    Xpath问题-无法从一个td遍历到另一个td

  14. 14

    从一个td取值到另一个td?

  15. 15

    选择TR时如何向TR中的每个TD添加一个类

  16. 16

    从最后一个<tr>的第一个<td>中选择innerHTML-jQuery

  17. 17

    除了最后一个,如何在tr中的所有td中使用each()?

  18. 18

    在同一<tr>中将目标<td>

  19. 19

    如何基于xpath在同一行中的另一个td文本选择一个td值

  20. 20

    如何根据jQuery中的另一个TD元素更改html表TD元素中的图标?

  21. 21

    Yii2:如何在一个 TR 内添加多个 TD 行?

  22. 22

    Scrapy:如何在这个 `tr` 中选择下一个 `td`?

  23. 23

    如何在jQuery中没有第一个和最后一个TD的情况下处理TR点击?

  24. 24

    特定表格中每个tr的第一个td的CSS

  25. 25

    让<tr>中的最后一个<td>表现得像新行

  26. 26

    Javascript / HTML将图像从HTML <td>传递到另一个<td>

  27. 27

    根据来自ajax的另一个td名称设置td值

  28. 28

    如何在CSS中使用tr类名在tr中找到第一个td?

  29. 29

    将第一个Tr移至thead并使用jquery将td替换为th

热门标签

归档