0

会社を表示するページがあります。私はたくさんの会社を持っているので、最初の20個だけを表示し、ユーザーが表の最後にあるリンク(「もっと読み込む」)をクリックできるようにしたいと思います。このリンクをクリックすると、既存の会社が保持され、テーブルの最後に新しくロードされた会社が追加されます。

どうすればこれを達成できますか?私はajaxと部分的なビューで作業する必要があることを知っていますが、実際の会社をテーブルに保持することは想像できません(新しい会社をロードするときにこれらの会社を消去しないでください)。

たぶん、(targetIDの)コンテンツを消去せず、最後にデータをロードするように指示するajaxオプションがあります

具体的なアイデアを教えてくれる例はありますか?

ありがとう。


更新しました

これは、新しくロードされた行のjQueryアイコンで発生した問題です。アイコン付きの新しくロードされた行(ajax get)を作成するにはどうすればよいですか?

ここに画像の説明を入力してください

これが私のJavaScriptです:

$(document).ready(function () {

    // Set icons on edit & delete buttons
    $(".editCompany").button({ icons: { primary: "ui-icon-pencil"} });
    $(".deleteCompany").button({ icons: { primary: "ui-icon-trash"} });
4

1 に答える 1

0

ajaxOptions 挿入モードを InsertAfter に設定する必要があります。

InsertionMode.Replace の代わりに InsertionMode.InsertAfter を使用し、テーブルをターゲットにしていることを確認してください。

このようなもの:

@Ajax.ActionLink("Load More...", "Action", new AjaxOptions{ UpdateTargetId="myTable", InsertionMode = InsertionMode.InsertAfter })

<tr>行を適切に挿入できるように、要素のみをレンダリングする PartialView を返していることを確認する必要があります。

InsertionMode の可能な値の列挙へのリンク: http://msdn.microsoft.com/en-us/library/system.web.mvc.ajax.insertionmode.aspx

jQuery アイコンを解決するには、AjaxOptions の OnComplete コールバックで同じ jQuery を適用する必要があります。

new AjaxOptions{ UpdateTargetId="myTable", InsertionMode = InsertionMode.InsertAfter, OnComplete = 'LoadIcons()' }
于 2012-04-11T11:30:50.397 に答える