1

jquery コードを使用してビューをポップアップしています。このポップアップからデータを削除したいのですが、次のコードを使用すると、削除アクションを実行せずにポップアップのみが表示されます。jquery コードを以下に示します。

$(document).ready(function (){
$('.del').click(function (e) {
    e.preventDefault();
    custom_confirm('pleaseNote:',
        function () {
            var sel = $(this).attr('href');

            $.ajax({
                url: '/default1/Delete/',
                type: 'POST',
                data: { id: sel },
                success: function (result) {
                    $(this).remove();
                }, error: function (result) {
                    alert("error");
                }
            });
        });
});
function custom_confirm(prompt, action, title) {
      $("#confirm").dialog({
        buttons: {
            'Proceed': function () {
                $(this).dialog('close');
                $('#confirm').dialog({ modal: true });
                action();
            },
            'Cancel': function () {
                $(this).dialog('close');
            }
        }
    });
}

})
そして私のビューコードは

@Html.ActionLink("Delete","Delete",new { id = item.studentID }, new { @class="del"})
                  <div id="confirm" style="display: none"></div>

コントローラーのアクションは

[HttpPost]       
    public ActionResult DeleteConfirmed(int id=0)
    {
        student student = db.students.Find(id);
        if (student == null)
        {
            return HttpNotFound();
        }
        db.students.Remove(student);
        db.SaveChanges();
        return RedirectToAction("Index");
4

1 に答える 1