5

jQueryUI ダイアログ ボックスを使用して Django プロジェクトに機能を追加したいと考えています。ここでは、リンク (「削除」リンクなど) をクリックすると jQueryUI ダイアログ ボックスがポップアップし、本当にそのアイテムを削除するかどうかを尋ねられます。次に、削除ボタン (jQuery ダイアログ ボックスが見つかりました) をクリックすると、Django 関数が削除ジョブを実行します。

では、削除ボタン (jQuery ダイアログ ボックスが見つかりました) から、views.py にある削除ジョブを実行する Django 関数にポスト メッセージ (それぞれの変数を含む) を送信するにはどうすればよいでしょうか?

以下のように(Djangoで)view.pyファイルを使用していると考えてください

def deletebook(request,book_id):
    books=Book.objects.get(pk=book_id)
    books.delete()
    return redirect('/index/')

私の要件は、削除オプションを押すと、すぐに確認ダイアログボックスが表示され、次の「はい」または「いいえ」の2つのフィールドが表示されることです。

htmlページとview.pyページを同じようにjQueryで開発するように設計するのを手伝ってください。

私のHTMLページは

<form action="/deletebook/{{ books.book_id}}/" method="POST"> {% csrf_token %}
<table>
  <tr>
    <td align="right">Book Name :<br><br><br> </td> 
    <td align="left"><input type="text" name="book_name" value="{{books.book_name}}"></input><br><br><br></td>
  </tr>
  <tr>   
    <td align="right">Author Name :<br><br><br></td> 
    <td align="left"> <input type="text" name="author_name" value="{{books.author_name}}"></input><br><br><br></td>
  </tr>
  <tr>
    <td align="right">Publisher Name : <br><br><br></td>
    <td align="left"><input type="text" name="publisher_name" value="{{books.publisher_name}}"></input><br><br><br></td><br><br><br>
  </tr>
</table>
<td><input type="submit" value="Delete"><td> 
</form>
4

1 に答える 1

1

ダイアログ用にdivを準備する必要があります。

<div id="dialog">
    #some text here
</div>

開いているダイアログを初期化するリンク:

<a href='#' onclick='javascript:openDialog()'></a>

およびjsopenDialog関数:

function openDialog(){
    $('#dialog').dialog('open');
}

およびダイアログの定義:

$( "#dialog-form-ajax" ).dialog({
    autoOpen: false,
    buttons: {
        "Delete": function() {
            $.ajax({
                 #ajax call for delete
                 #with url pointing to your delete function
            });
            $( this ).dialog( "close" );
        },
        "Cancel": function() {
            $( this ).dialog( "close" );
        }
    }
});
于 2013-03-01T09:25:24.880 に答える