2

選択項目内の項目のリストを表示する Django アプリがあります。ユーザーが選択したアイテムを変更すると、AJAX を使用して (Django のフォームとフォームセット ヘルパーを使用して) フォームをページの「コンテンツ」セクションに挿入し、そのアイテムのデータを編集します。

私がやりたいことは、ユーザーがフォームの「保存」ボタンをクリックすると、フォームが送信されたかのように Javascript 関数が POST データを送信し、AJAX を使用してページから新しいデータを再注入することです。

常にきれいな URL を維持したいのですが、常に編集中のエントリに戻ります (したがって、AJAX HTML の置き換え)。

すべてのフォーム フィールドを取得して、Django フォームが正しく認識できる文字列を再構築する必要はありません。

これを行う方法はありますか?私はすべて間違っていますか?

4

1 に答える 1

5

フォーム全体を取得し、送信時に AJAX を使用して送信するには、次のようにします (jQuery を想定):

jQuery('form').submit(function (event) {
    event.preventDefault();
    var form = jQuery(this);
    var data = form.serialize();

    jQuery.post(form.attr('action'), data, function(html) {
        ...
    });
});
于 2013-08-28T22:31:16.447 に答える