0

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

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

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

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

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

现在,如果您刷新小提琴并反转步骤,先执行步骤 2,然后执行步骤 1,您将看到两个表格单元格中的 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())
4

1 回答 1

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/

于 2013-01-02T19:34:22.273 回答