0

jQueryを使用してhtmlテーブルに行を追加しましたが、ブラウザーを更新すると、行が消えます。行を維持するにはどうすればよいですか?

<TABLE id="dataTable" width="100%" align="center">
    <TR align="center" border="1">
        <TH></TH>
        <TH>ID </TH>
        <TH>Name</TH>
        <TH>Status</TH>
    </TR>
    <TR align="center">
        <TD><INPUT type="checkbox" name="chk"/></TD>
        <TD> 1 </TD>
        <TD> <INPUT type="text" value="Submission 1" /> </TD>
        <TD>Working version</TD>
    </TR>
</TABLE>

<script type="text/javascript">

$(document).ready(function(){
$('#createNew').click(function() {
    var table = document.getElementById('dataTable');

    var rowCount = table.rows.length;

    $('#dataTable tr:last').after('<TR align="center"><TD><INPUT type="checkbox" name="chk"/></TD><TD>'+ rowCount + '</TD><TD> <INPUT type="text" value="Submission 1" />   </TD><TD>Working version</TD></TR>');
4

4 に答える 4

0

jQueryだけではできません。

たとえば、変更をデータベースに保存する必要があります。

編集:または、php、$ _ SESSION、$ _ COOKIEを使用できます....わかりません。方法はたくさんありますが、jQueryだけではありません。

于 2012-07-03T15:10:34.760 に答える
0

これは、最初にテーブルを作成するためにデータを取得する場所によって異なります。データベースからデータを取得してテーブルに貼り付ける場合は、ajaxコールバックを作成して、jqueryを使用してデータをデータベースに挿入する必要があります。

詳細はこちらをご覧ください

于 2012-07-03T15:12:46.780 に答える
0

関数を使用.dataしてデータをテーブルにバインドし、それを可能な限り何度もコピーできますか?.dataメモリリークからのデータを防ぎます。api.jquery.com

于 2012-07-03T16:17:02.493 に答える
0

これは単なる提案ですが、次のように、新しい行をCookieに保存してみることができます:
jquery cookieに配列を格納する方法は?

このようにして、ページを更新した後、行を元に戻します(もちろん、ページが再度読み込まれたときにCookieを読み取って行を追加する必要があります)。

ただし、最善の解決策は、サーバー側のコードを使用して新しい行をデータベースに保存し、ページを更新するたびにそれらを読み込むことです。これにより、そのページにアクセスするすべてのユーザー(または、特定のユーザーのみ)に新しいレコードが表示されます。ユーザーIDを追加しますが、それはあなたの質問から少し外れています)。

@Kellの回答の記事を確認してください。これは本当に簡単に実装できます:)

于 2012-08-30T11:55:06.657 に答える