单击bootstrap弹出按钮时如何读取响应?

时间:2013-05-03 05:47:41

标签: asp.net-mvc asp.net-mvc-4 twitter-bootstrap

我正在开发MVC应用程序。我正在使用bootstrp for CSS。

我想在删除记录时使用警告/对话框进行确认。 它应该要求确定/取消并根据按钮单击下一步将执行...

我在下面的代码表格中得到了一些论坛,它运行正常,但如果我点击确定或取消按钮就没有得到任何事件

如何从下面的代码中读取这些点击事件?

$('#Deactivate').click(function () {


    var href = $(this).attr('href');
    if (!$('#dataConfirmModal').length) {
        $('body').append('<div id="dataConfirmModal" class="modal" role="dialog" aria-labelledby="dataConfirmLabel" aria-hidden="true"><div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button><h6 id="dataConfirmLabel">Deactivation Confirmation</h6></div><div class="modal-body"><h3>Are you sure to deactive @Model.Name ?</h3> </div><div class="modal-footer"><button class="btn" data-dismiss="modal" aria-hidden="true">Cancel</button><a class="btn btn-primary" id="dataConfirmOK">OK</a></div></div>');
    } 
    $('#dataConfirmModal').find('.modal-body').text($(this).attr('data-confirm'));
    $('#dataConfirmOK').attr('href', href);
    $('#dataConfirmModal').modal({show:true});


    $('#dataConfirmOK').on('click', function(e) 
    {
        alert('@Model.Id');

       var url2 = "@Html.Raw(Url.Action("DeactivateParty", "Party", new { @id = "PoNo"}))";
        alert(url2);
        url2 = url2.replace("PoNo", '@Model.Id');

        $.post(url2, function (data) {
            if(data == true)
            {
                var url = $("#RedirectTo").val();
                location.href = url ;

            }
    });

    return false;




});

2 个答案:

答案 0 :(得分:0)

您必须为Ok按钮指定事件处理程序:

$('#dataConfirmOK').on('click', function(e) {
    // Call your delete action here
});

答案 1 :(得分:0)

看起来您关闭post方法会出现语法错误:

$.post(url2, function (data) {
    if(data == true)
    {
        var url = $("#RedirectTo").val();
        location.href = url;
    }

应该......

$.post(url2, function (data) {
    if(data == true)
    {
        var url = $("#RedirectTo").val();
        location.href = url ;
    }
})

n.b如果您将发布的代码转储到您喜欢的浏览器的控制台窗口中,您将看到错误。