jQuery删除确认

时间:2012-04-26 04:45:49

标签: jquery asp.net master-pages

在我的asp.net应用程序中有一个母版页和一些其他页面,在那些页面中我添加了按钮以及删除按钮,对于这个删除按钮,我在我的代码中写了删除方法,其中工作正常。但在此删除功能触发之前,我需要显示删除确认框。为此,我在custom.js文件夹下的Js jQuery文件中编写了删除确认方法,并在主页中引用此js文件,如

<script src="/Js/custom.js" type="text/javascript"></script>

在这个custom.js中,我在custom.js的pageInit下编写了删除确认方法,如

function pageInit(){
$(".delete").click(function (event) {
    confirmationBox(event);
    });
}

function confirmationBox(event) {

var r = confirm("You are about to delete some items. Click Ok to continue");
if (r == true) {
    $(document).submit();
}
else {
    event.preventDefault();
}
}

并在脚本中使用类名作为删除

<asp:Button ID="btnDelete" class="delete" Text="Delete"/>

从脚本调用js文件

<script type="text/javascript">
 $(document).ready(function () {
     pageInit();
 });
 </script>

但是这个删除确认方法根本没有触发,这个查询有什么问题,任何人都可以帮助我......

3 个答案:

答案 0 :(得分:2)

你应该在$(document).ready():

中有删除功能
$(document).ready(function() {
   // put all your jQuery goodness in here.
 });

答案 1 :(得分:1)

实现您正在执行的操作的另一种方法是使用ASP.NET Button的OnClientClick事件

<asp:Button 
     ID="btnDelete" 
     class="delete" 
     Text="Delete" 
     OnClientClick="return confirmationBox()" />


function confirmationBox() {
    var r = confirm("You are about to delete some items. Click Ok to continue");
        if (r) {
            return true;
        }
        else {
            return false;
        }
    }

应该这样做:)

[<强>更新]
我的不好,我忘了在OnClientClick函数中包含return; 如果您在确认中选择取消,则return会停止回发。

答案 2 :(得分:1)

您的删除按钮控件存在于母版页内。引用删除按钮使用此语法输入[id $ = btn_delete]。绑定document.ready函数中的按钮单击事件。 以下代码为我工作。

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">

<asp:Button ID="btn_delete" runat="server" Text="Delete Confirmation" 
    onclick="btn_delete_Click" />



    <script type="text/javascript">

        $(document).ready(function () {

            $('input[id$=btn_delete]').click(function (event) {
                confirmationBox(event);
            });
        });

    function confirmationBox(event) {

        var r = confirm("You are about to delete some items. Click Ok to continue");
        if (r == true) {
            $(document).submit();
        }
        else {
            event.preventDefault();
        }
    }
    </script>