1. 程式人生 > >選中gridview其中一行單擊刪除按鈕實現行刪除功能

選中gridview其中一行單擊刪除按鈕實現行刪除功能

在前端給gridview新增客戶端事件(行點選事件):
 <ClientSideEvents  RowClick="function(s, e) {SetLeftData(s,e);}" />
 function SetLeftData(s, e) {
          
            var index = e.visibleIndex;
            LeftGridView.GetRowValues(index, 'F_SAR_ID;VC_SAR_NAME;F_VERSION;D_SAR_DATE', function (result) {
                lalName.SetValue(result[1]);
                if (result[3] == "null" || result[3] == null) {
                    f_date.SetValue(new Date());
                }
                else {
                    f_date.SetValue(new Date(result[3]));
                }
                Judeg = 1;
                Cbzh.PerformCallback(result[0]);
                console.log(1);
                document.getElementById("IsLoad").value = "1";
                dxhfLoadData.PerformCallback("load" + "|" + result[0] + "|" + result[3]);
                CenterGridView.PerformCallback("null");
            });
        }
然後新增button的點選事件: 
 <ClientSideEvents Click="function(){ DeleteData(); }" />
function DeleteData() {
            var index = LeftGridView.GetFocusedRowIndex();
            if (index < -1) {
                alert("請選中要刪除的資料!");
                return;
            }
            LeftGridView.GetRowValues(index, "VC_SAR_NAME", function (result) {
                DeleteCallback.PerformCallback("Delete|" + result);
            });

        }

新增callback控制元件,完成刪除的回撥事件 
<dx:ASPxCallback runat="server" ClientInstanceName="DeleteCallback" ID="DeleteCallback" width="100px" OnCallback="DeleteCallback_Callback">
<ClientSideEvents CallbackComplete="DeleteSarCallbackComplete"></ClientSideEvents>
</dx:ASPxCallback>
protected void DeleteCallback_Callback(object source, DevExpress.Web.ASPxCallback.CallbackEventArgs e)
        {
            string[] param = e.Parameter.Split('|');
            objSceneAssetRatio m = new objSceneAssetRatio();   
            List<objSceneAssetRatio> formList  = clsSceneAssetRatio.GetDataOrderByCreateTime();
            if (param[0] == "Delete")
            {
                if (formList.Exists(x => x.SarName == param[1]))
                {
                    m.SarName = param[1];  //方案名稱
                    if (clsSceneAssetRatio.DeleteMainData(m))
                    {
                        e.Result = "刪除成功!";
                    }
                    else
                    {
                        e.Result = "刪除失敗!";
                    }
                    
                }
                else
                {
                    e.Result = "方案名稱不存在!";
                    return;
                }
            }
        }