返回首页

介绍
你使用GridView Web控件列出从一个特定的数据源的记录,你要为每一行数据删除功能。一个对话框呈现给用户,以确认删除。还有一个错误的可能性,从您的数据源中删除一条记录时,你要显示一个对话框删除过程中发生错误时向用户。解决方案细节:
这个例子使用(微软)Northwind数据库的产品表。在GridView Web控件获得通过ObjectDataSource的网络控制数据。ObjectDataSource的一个强类型的中间层对象,它封装了数据层对象,呼吁通过得到的数据(的SelectMethod)一个存储过程。你不必使用ObjectDataSource控件删除数据源中的一个项目,你也可以使用SqlDataSource等。初始化的jQuery UI插件对话框。

$(function () {

    InitializeDeleteConfirmation();

});



function InitializeDeleteConfirmation() {

    $('#deleteConfirmationDialog').dialog({

        autoOpen: false,

        resizable: false,

        height: 140,

        modal: true,

        buttons: {

            "Delete": function () {

                $(this).dialog("close");

            },

            Cancel: function () {

                $(this).dialog("close");

            }

        }

    });

}
添加在GridView的TemplateField。里面的模板字段,添加一个ImageButton。{C}
上面的代码将通过在ImageButton的AlternateText属性的产品ID。当按钮被点击时,它会调用客户端JavaScript函数称为deleteItem。 deleteItem函数显示对话框给用户。看到快照和下面的代码。
{S0的}
function deleteItem(uniqueID, itemID) {

    var dialogTitle = 'Permanently Delete Item ' + itemID + '?';

 

    $("#deleteConfirmationDialog").html('<p><span class="ui-icon " + 

      "ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>" + 

      "Please click delete to confirm deletion.</p>');

 

    $("#deleteConfirmationDialog").dialog({

        title: dialogTitle,

        buttons: {

            "Delete": function () { __doPostBack(uniqueID, ''); 

                      $(this).dialog("close"); },

            "Cancel": function () { $(this).dialog("close"); }

        }

    });

 

    $('#deleteConfirmationDialog').dialog('open');

    return false;

}

在对话框中删除按钮被点击时,回传被执行,然后关闭对话框。否则,对话框只是封闭,没有进一步的行动。当点击删除的ImageButton回发生时,GridView发送一个删除命令(的CommandName ="Deletequot ;)随着产品ID(的CommandArgument ='<%#的Eval("ProductIDquot ;)%GT;')的值到ObjectDataSource控件。ObjectDataSource将寻找一个静态方法(C#中)删除(在VB.NET共享功能),需要一个参数调用的ProductID。位于在Northwind.BusinessObject.Products对象的函数或方法。这将删除特定的记录。{体C3}
下面是一个示例删除功能:{的C4}后的ObjectDataSource调用删除方法,的ondeleted事件触发。这里我们可以检查任何错误,在项目删除。代码片段所示。{C5的}
当发生错误时,我们调用一个JavaScript函数称为ShowError传递"的ErrorMessage。看到下面的快照。注意:我们删除特殊字符所以,我们的客户端脚本不会打破。{5233}
{S}遗言
要运行的代码下载,请务必下载并安装微软的Northwind数据库。也一定要更改用户名和密码在App_Code文件夹中发现的Dbase.cs(Dbase.vb)类文件,辅助文件夹下。下载的代码是修改后的版本生成的的网页形式。
原来的文章可以发现{A2的}。演示
{A3的。
一如往常,代码和文章提供"作为Isquot;,是绝对没有保证。使用您自己的风险。
快乐编码!!

回答

评论会员:D 时间:2