如何更改追加表行的textarea高度比上一行更大?

时间:2013-01-02 17:23:59

标签: jquery html css

我在这里有一个jsfiddle:http://jsfiddle.net/XM8hG/33/embedded/result/

要查看小提琴代码,请点击此处:http://jsfiddle.net/XM8hG/33/

要使用小提琴,请按照以下步骤操作:

  1. 在顶部单击打开的网格并选择按钮3,然后单击“添加问题”按钮将该行附加到下面的表中,您可以看到textarea填充表格单元格。

  2. 现在回到顶部再次点击打开网格,但这次选择按钮26然后点击“添加问题”按钮将行追加到下面的表格中,你可以看到textarea没有填满表格细胞。这是因为它占用更多空间并且表格单元格增加了。

  3. 现在,如果您刷新小提琴并反转步骤,则先执行步骤2然后执行步骤1,您将看到两个表格单元格中的textarea填充行,因为第一个表格行大于第二个表格行。

    但是我需要在下面的代码中包含以便能够实现反向解决方案,以便如果最后一个表行更小,那么textarea应该能够填充下一行中的表格单元格更大?

    以下是在小提琴中注释的主要代码,以便在选项更改时将textarea填充到表格单元格中:

    //CHANGE TEXTAREA HEIGHT
        var _x = $(e.currentTarget);
        var _y = _x.closest('td.extratd');
        var _z = _y.prev();
    
        $('textarea', _z).css('height', '').height(_z.innerHeight())
    

1 个答案:

答案 0 :(得分:0)

将setWidth()函数更新为

function setWidth() {
    $(".textAreaQuestion").each(function(){
     var questionCellWidth = $(this).closest(".question").width();
    var questionCellHeight = $(this).closest(".question").height();
    $(this).css({
        "width": (questionCellWidth - 6) + "px",
        "height": (questionCellHeight) + "px"
    });

    });
  }

http://jsfiddle.net/XM8hG/34/