私は複数の行を持つテーブルを持っています。それぞれには「編集」ボタンがあります。このボタンをクリックすると、ユーザーは詳細が既に入力済みのフォームにリダイレクトする必要があります。さて、私が定義したデータは、「編集」ボタンの定義内の属性:jQueryのは、私がしている、「電子メール」データ属性の値を導出し、/add-edit-user
にPOSTリクエストでそれを渡している使用Django:POSTパラメータを持つテンプレートを返す
<a href='#' class="edit-user" data-email="[email protected]">edit</a>
:私は私のフォームオブジェクトを定義し、私のテンプレートファイルへのコンテキスト変数として渡ししようとしている次のビューに
$(".edit-user").click(function()
{
var url = base_url + '/add-edit-user/';
var data = {
'email': $(this).data('email'),
'csrfmiddlewaretoken': csrftoken,
};
// $.post(url, data);
$.post(url, data).done(function(result) {
console.log(result);
}).fail(function(error) {
console.log(error);
});
});
/add-edit-user
URLマップ:また私のフォームを持っているページにマッピングされました
def add_edit_users(request):
form = AddUpdateForm(request.POST or None)
data = {'form': form}
return render(request, 'add_edit_users.html', data)
ユーザーが「編集」ボタンをクリックすると、データ属性に「電子メール」パラメータを設定し、POSTリクエストでそのURLを/add-edit-user
URLに渡すと、それ以降は私のフォームテンプレートをフォームオブジェクトと共にコンテキスト変数としてレンダリングし、email
フィールドが既にプレフィックスされているフォームを表示します。
ただし、edit
リンクをクリックすると、ページはフォームページにリダイレクトされませんが、フォームページのHTML全体が返信に表示されます。入力フィールドがPOST変数から事前に入力されるように、フォームのテンプレートにフローをリダイレクトするにはどうすればよいですか?あなたが達成したい何
ajax投稿はあなたをリダイレクトしません。あなたは隠された電子メールフィールドでフォームを作成しようとしましたか?その後、編集ボタンを使用して送信します。 –
@AjmalNoushadあなたはそれについてもっと詳しく説明できますか?私はその流れがどのようになるか理解していたかどうかわからない。 –
さて、私は答えを追加しました –