从另一个单元格中的动态创建元素获取第一个单元格的内容

时间:2014-05-15 11:23:56

标签: javascript jquery

我无法检索第一个单元格的内容。我正在尝试这样:

console.log($(this).closest("tr").find('td:first').innerHTML);
//or...
console.log($('td:first', $(this).parents('tr')).text());

代码:

$('.editable').click(function () {
    var text = $(this).text();
    if (typeof $(this).find("textarea")[0]=="undefined")//checking if we have a textarea already
    {        
        $(this).text('');
        $('<textarea />').appendTo($(this)).val(text).select().blur(function () {

            var newText = $(this).val();
            $(this).parent().text(newText).find('textarea').remove();

            console.log($(this).closest("tr").find('td:first').innerHTML);
        });
    }
});

JSfiddle:http://jsfiddle.net/KjknL/

我认为问题与动态添加的textarea有关。但我无法摆脱它。如果我使用.prev()或.next(),则返回空。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

试试这个:http://jsfiddle.net/KjknL/2/

textarea不再存在,因为你在尝试从它到达第一个td之前就把它删除了。

console.log($(this).closest("tr").find('td:first').html());                
$(this).parent().text(newText).find('textarea').remove();