0

高さが固定のテーブルがあり、javascript で行を追加しています。私の問題は、スクロールに到達したらです。スクロールが一番上に設定されており、新しく追加された行が表示されません。行が追加されるとスクロールが下に移動します。

Fireforとchromeでこれを試しましたが、IE8では機能しませんでした。

$(document).ready(function(){

        $('button[id^="product"]').click(function () {

              var newTr = $('<tr></tr>');

                newTr.html('<td width="29px" style="text-align:center;">x</td><td width="144px">Product 1</td><td width="44px" style="text-align:center;">2</td><td width="86px style="text-align:right;">16.50</td>');

                newTr.appendTo("#saletbl");

         var tableElement = document.getElementById('saletbl');

         tableElement.scrollTop = tableElement.scrollHeight;
          });
    });
4

2 に答える 2

1

なぜあなたはdivを使わないのですか?テーブルをdivに入れることができます。垂直スクロール バーのみを表示する場合は、水平スクロール バーをオフにすることもできます。

<div style="overflow:scroll;horizontal-scroll;overflow-x:hidden;">

-ms-overflow-x:hidden を使用

IE8で。

于 2013-01-10T05:28:25.253 に答える
0

これを置き換えることにより、行を追加した後、テーブルの最後の行にフォーカスを設定できます

var tableElement = document.getElementById('saletbl');

     tableElement.scrollTop = tableElement.scrollHeight;

これに

$("#saletbl tr:last-child").focus()
于 2013-01-10T05:28:10.883 に答える