问题描述
ASPxGridView控件做删除操作时,,我要先跟据所选择的行的ID去判断数据库,此记录是否可以删除,再做出提示,可以不知道怎么弹出提示框!!请高手求解!!!我的部分代码:aspxcode:<dx:GridViewCommandColumnCaption="操作"VisibleIndex="0"><DeleteButtonVisible="True"Text="删除"></DeleteButton></dx:GridViewCommandColumn>aspx.cscode:protectedvoidGV_LXS_RowDeleting(objectsender,DevExpress.Web.Data.ASPxDataDeletingEventArgse){if(iCount>0)///如果iCount大于0时,弹出提示框,{//ClientScript.RegisterClientScriptBlock(typeof(Page),newGuid().ToString(),"<script>alert('对不起!此资料已有售票记录,不能删除!!')</script>",true);//这个方行行不通e.Cancel=false;return;}}急啊,大神们!!!
解决方案
解决方案二:
在绑定事件里写。
解决方案三:
在绑定事件里写??能详细一点吗?
解决方案四:
有高手没,帮我顶一下
解决方案五:
这个一般是用javascript来实现。连官方给出的例子都是用javascript来做的。
解决方案六:
例证如下望对你有所帮助publicvoidGV_DataBind(){stringsqlstr="select*fromtb_inf";sqlcon=newSqlConnection(strCon);SqlDataAdapterda=newSqlDataAdapter(sqlstr,sqlcon);DataSetds=newDataSet();sqlcon.Open();da.Fill(ds);sqlcon.Close();this.GridView1.DataSource=ds;this.GridView1.DataKeyNames=newstring[]{"id"};this.GridView1.DataBind();}protectedvoidGridView1_RowDataBound(objectsender,GridViewRowEventArgse){if(e.Row.RowType==DataControlRowType.DataRow){if(e.Row.Cells[6].Text=="False"){e.Row.Cells[6].Text="<fontcolor=red>已通过</font>";}else{e.Row.Cells[6].Text="未通过";}if(e.Row.RowState==DataControlRowState.Normal||e.Row.RowState==DataControlRowState.Alternate){//内容提示为GridView第二行数据显示的内容,其索引值为1(注意:.NET中索引值都是从0开始)((LinkButton)e.Row.Cells[8].Controls[0]).Attributes.Add("onclick","javascript:returnconfirm('确认要删除信息主题:""+e.Row.Cells[1].Text+""吗?')");}}}protectedvoidGridView1_SelectedIndexChanging(objectsender,GridViewSelectEventArgse){stringid=this.GridView1.DataKeys[e.NewSelectedIndex].Value.ToString();sqlcon=newSqlConnection(strCon);SqlCommandcom=newSqlCommand("select[check]fromtb_infwhereid='"+id+"'",sqlcon);sqlcon.Open();stringcount=Convert.ToString(com.ExecuteScalar());if(count=="False"){count="1";}else{count="0";}com.CommandText="updatetb_infset[check]="+count+"whereid="+id;com.ExecuteNonQuery();sqlcon.Close();this.GV_DataBind();}protectedvoidGridView1_PageIndexChanging(objectsender,GridViewPageEventArgse){this.GridView1.PageIndex=e.NewPageIndex;this.GV_DataBind();}protectedvoidGridView1_RowDeleting(objectsender,GridViewDeleteEventArgse){intInfoId=(int)GridView1.DataKeys[e.RowIndex].Value;//获取要删除的数据行的索引CodeGo.net/stringstrSql="Deletefromtb_infwhereid=@id";//定义删除操作的SQL语句sqlcon=newSqlConnection(strCon);if(sqlcon.State.Equals(ConnectionState.Closed)){sqlcon.Open();}//打开数据库连接SqlCommandcmd=newSqlCommand(strSql,sqlcon);SqlParameterpares=newSqlParameter("@id",SqlDbType.Int,4);//定义参数cmd.Parameters.Add(pares);//添加参数cmd.Parameters["@id"].Value=InfoId;//参数赋值if(cmd.ExecuteNonQuery()>0)//判断删除操作是否成功{Response.Write("<script>alert('删除成功!')</script>");}sqlcon.Close();//关闭数据库连接GV_DataBind();//重新绑定数据}
解决方案七:
实现选择删除GridView中的商品信息protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){BindData();//调用自定义方法绑定数据到控件}}publicvoidBindData()//CodeGo.net/{stringstrCon=ConfigurationManager.AppSettings["conStr"];//定义数据库连接字符串stringsqlstr="select*frommrbccd";//定义执行查询操作的SQL语句SqlConnectioncon=newSqlConnection(strCon);//创建数据库连接对象SqlDataAdapterda=newSqlDataAdapter(sqlstr,con);//创建数据适配器DataSetds=newDataSet();//创建数据集da.Fill(ds);//填充数据集GridView1.DataSource=ds;//设置GridView控件的数据源为创建的数据集ds//将数据库表中的主键字段放入GridView控件的DataKeyNames属性中GridView1.DataKeyNames=newstring[]{"BccdID"};GridView1.DataBind();//绑定数据库表中数据}protectedvoidGridView1_RowDeleting(objectsender,GridViewDeleteEventArgse){//定义一个整型变量count存储根据当前行索引获取到的指定单元格中的字段值intcount=int.Parse(GridView1.Rows[e.RowIndex].Cells[4].Text.Trim());if(count>0){e.Cancel=true;//取消删除动作lblMessage.Text="警告:库存量大于0的商品不得删除!";lblMessage.ForeColor=System.Drawing.Color.Red;return;}stringdelete_sql="deletefrommrbccdwhereBccdID='"+GridView1.DataKeys[e.RowIndex].Value.ToString()+"'";booldelete=ExceSQL(delete_sql);//调用ExceSQL执行删除操作if(delete){Response.Write("<scriptlanguage=javascript>alert('删除成功!')</script>");BindData();//调用自定义方法重新绑定控件中数据}else{Response.Write("<scriptlanguage=javascript>alert('删除失败!')</script>");}}
解决方案八:
<asp:ButtonID="delect"runat="server"OnClientClick="returnconfirm('确定删除吗?')"Text="删除"CommandName='<%#Eval("PROPERTY_ID")%>'OnClick="delect_Click"/>
解决方案九:
分三步:aspx中:1,head中加一段脚本<scripttype="text/javascript">functionEndCallBack(s,e){if(s.cpAlertMsg!=""&&s.cpAlertMsg!=null){alert(s.cpAlertMsg);s.cpAlertMsg=null;}}</script>2,在ASPxGridView1节点里添加<ClientSideEventsEndCallback="function(s,e){EndCallBack(s,e);}"/>3,后台cs代码中添加ASPxGridView1.JSProperties.Remove("cpAlertMsg");//先清空ASPxGridView1.JSProperties["cpAlertMsg"]="无操作权限";
解决方案十:
8楼目测正确,aspxgridview建议不要用,效率太低下。搞webform最好还是用原生态控件。