单击按钮,要在客户端生成MessageBox,并判断是否点击"ok"按钮来执行事件,缺省为取消按钮.1.用C#能不能写,如果可以请高手指点.2.用javascript该怎么写,请高手指点.

解决方案 »

  1.   

    Response.Write("<script language='javascript'>alert('你要显示的信息!!')</script>");
      

  2.   

    刚才只是弹出简单的消息框,现在在button上加
    btnDelete.Attributes.Add("onClick", "javascript:return confirm('确定删除吗?');")
    当点击确定执行下面的程序,点击取消就不执行
      

  3.   

    楼上正解.
    WebForm中用不了MessageBox的,所以只能用js实现效果了.
      

  4.   

    你可以用js中自带的 confirm对话框来控制
      

  5.   

    用脚本..
    object.confirm([message])Parameter Description 
    message  Optional. (String) String to display. Return ValueReturns TRUE if the user chooses OK, or FALSE if the user chooses Cancel. 
      

  6.   

    c#可以写,但是那样不方便,也不有利于交互的迅速执行,2楼的方法可以
    var
      

  7.   

    var a= confirm(‘message’);
    if a {
      ………………
    }
    else{
       ……………………
    }
      

  8.   

    <script>javascript:alert('提示')</script>
      

  9.   

    VBScript中的 MsgBox 比js中的 alert / confirm 好多了。
      

  10.   

    http://blog.csdn.net/kgdiwss/archive/2005/06/15/394944.aspx
      

  11.   

    可用使用一个页面来作为MessageBox使用,使用js前置脚本弹出就可以了!
    //弹出一个模式窗口
    public void CspOpenWindowModal (string url, int width, int height,string allowStatus,string allowScroll,bool refreshParent,string refreshButtonID)
    {
    string options="'dialogWidth="+width+"px;dialogHeight ="+height+"px;"+
    "help=no;status="+allowStatus+";scroll="+allowScroll+"'";
    if(refreshParent==true)
    {
    GetPostDoPostBackScript();
    }
    RegisterStartupScript(Guid.NewGuid().ToString(), "<script language=\"JavaScript\">" + GetPopupScriptModal(url, options, refreshParent,refreshButtonID) + "</script>");
    } protected string GetPopupScriptModal(string url, string options,bool refreshParent,string refreshButtonID)
    {
    string returnScript;
    if(refreshParent==true)
    {
    returnScript="var w=window.showModalDialog(\"" + url + "\", '', " + options + ");__doPostBack('"+refreshButtonID+"','');";
    }
    else
    {
    returnScript="var w=window.showModalDialog(\"" + url + "\", '', " + options + ");";
    }
    return returnScript;
    }
      

  12.   

    当然你要根据的消息的长度控制用作MessageBox的aspx页面的大小.
      

  13.   

    btnDelete.Attributes.Add("onClick", "javascript:return confirm('确定删除吗?');")
    这个方法要经过服务器端允许才可以执行,我要的是客户端直接删!
      

  14.   

    强烈建议使用
    Response.Write("<script defer>window.alert('你想干什么');</script>");
    这样弹出的窗口不会出现白屏,而且能夺取焦点啊
      

  15.   

    myDeleteButton.Attributes.Add("onclick", "return confirm('確定要刪除嗎?');");
      

  16.   

    to:chenxianping(做好程序員﹐向SA發展) 
    没用的,我试过了,要向服务器声请的
      

  17.   

    if(confirm("确认删除该项?")) 
      self.location.href="?action=del&id=xx"
    else
      return false;
      

  18.   

    用断点跟踪不更方便吗?
    1.
      Response.Write("<script language=javascript> window.alert('保存成功');</script>");
    2.
      Response.Write("<script>alert('"+_OperateWarning+"');</script>");
    3.将System.winform命名空间倒入,试一下: MessageBox.Show("aaaa");
      

  19.   

    to:ChengKing(bantamweight) :
    ---------------
    你的办法我早就试过了,没用,删除数据的时候要询问服务器的。
      

  20.   

    用js   看confirm 的返回值然后是否转向你要提交的页面
      

  21.   

    这是vb的代码,C#也差不多,供参考!
    Sub myDelete(ByVal strBh As String)
            Dim strScript As String
            strScript = "<script language='JavaScript'>"
            strScript += "var x1='您确认删除订单号为" & strBh & "的订单吗? ';"
            strScript += "var xxx=confirm(x1);"
      
            strScript += "if (xxx==true) var x2=window.showModalDialog('DingDanDetailDelete.aspx?ddh=" & strBh & "');"
            strScript = strScript & "if(x2=='Yes') window.document.getElementById('Button1').click(); "
            strScript += "</script>"
            Page.RegisterStartupScript("confirmDelete", strScript)
        End Sub
      

  22.   

    WebForm中用不了MessageBox的,所以只能用js实现效果了.
      

  23.   

    可以,直接在WEB页里调用WINFORM组件,就好像JAVA小程序一样
      

  24.   

    to:fanweiwei(兴趣所在)
    -----------------------------------
    可以的,只不过只能在服务器端运行。C#就是这点不好
      

  25.   

    to:jimu8130(yang)
    -----------------------
    2楼的方法是可以的我也是知道的,我要先判断是否选择了一条信息(用INPUT type=radio 选择信息)然后在询问是否要删除,可是呢,2楼的方法是先询问,后判断。我觉得有点不尽人意。该怎么办呢?
      

  26.   

    if(confirm('aaaaaa'))
    {
       return true;//Postback执行CS代码
    }
    else
    {
       return false;//不执行CS代码
    }
      

  27.   

    楼上的应该想想,如果在服务器端弹出一个框来.服务器上的谁去点啊?!呵呵..随便说的,可能不是那么回事儿,但必须在客户端执行才行/我经常用的就是response.write("<script></script")这样的方式...
      

  28.   

    to:zelonggao(龙龙) 
    --------------------------------
    这样的话达不到if...else的效果
      

  29.   

    Response.Write("<script language=javascript> window.alert('提示文本');</script>");
      

  30.   

    if  (MessageBox.Show("确定要删除?", "提示",MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation,MessageBoxDefaultButton.Button1,MessageBoxOptions.ServiceNotification )==DialogResult.OK)   {//do some useful things  }
    //调用using System.Windows.Forms;这个包
    给你一个玩玩注:只能在server端运行
      

  31.   

    blackhero(黑侠客) 
    --------------------
    谢谢,这个我早会了!
      

  32.   

    如果是Response.Write("<script language=javascript> window.alert('提示文本');</script>");
    怎么用if...else判断“是”或“否”
      

  33.   

    btnDelete.Attributes.Add("onClick", "javascript:return confirm('确定删除吗?');")用这个就可以了!另外怎么用if...else判断“是”或“否”?
    不用判断,如果点击“是”的话会自动回后台服务器继续执行,如果是“否”则不进行任何操作。不用后台判断。
      

  34.   

    s1ihome(把握住今天) 
    if(confirm("确认删除该项?")) 
      self.location.href="?action=del&id=xx"
    else
      return false;
    ---------------------------------
    其实这位大哥的做法就可以,虽然语法我不知道是否正确……
    用URL传递一个ID给本页面来判断是否点了确定按扭,不过你应该在本页面PAGELOAD里面判
    断是否存在ID这个参数,然后做相应的操作。
    另外上面的代码是写在前台的JS,判断和操作应该在后台。上面那些用ATTRIBUTE的好象
    也是可以的,不过有时候会出现一些问题,不是特别好解决,所以我习惯用这种方法
      

  35.   

    btnDelete.Attributes.Add("onClick", "javascript:return confirm('确定删除吗?');")
    类似这样的代码就可,主要就是在RETURN上,至于你想在客户端清除数据这个不知你是什么意思?
      

  36.   

    to: tommorow1982()
    --------------------------------
    我也知道这个方法,不过我不知道它是写在JS里面的。我对JS也不是很熟。是把它放在function里面吗?
    然后怎么用,我的按钮是web控件。
      

  37.   

    我给大家推荐一个asp.net学习平台!
    我看到了一个网站 100MB asp和 asp.net空间 现在促销,
    同学们可以做一个简单的个人网站用来找工作 ,
     支持 asp.net 一年才50元!不要错过哦!!!
    速度非常快,一般公司企业 足够用了!
    http://www.hi876.com 
    希望能对大家有帮助
      

  38.   

    to:zol319() 
    ---------------------
    别捣乱!!!
      

  39.   

    自己写个自定义的(感兴趣的朋友可以看看)
    自描绘控件
    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;namespace myc
    {
    /// <summary>
    /// myrcontrol 的摘要说明。
    /// </summary>
    public class myrcontrol: Control,IPostBackEventHandler,IPostBackDataHandler
    {
    protected override void Render(HtmlTextWriter writer)
    {   
    writer.Write("<INPUT type=text name=\"{0}\">",this.UniqueID);
    writer.Write("<INPUT type=button value=\"adv\" onclick=\"adv('hello world')\">",this.UniqueID);
    writer.Write("<INPUT type=button value=\"Click Me!\" onclick=\"{0}\">",Page.GetPostBackEventReference(this));
    }
    #region IPostBackEventHandler 成员 public void RaisePostBackEvent(string eventArgument)
    {   
    //if(!Page.IsPostBack)
    Page.Response.Write("RaisePostBackEvent(string eventArgument)");//捕获按钮事件
    } #endregion #region IPostBackDataHandler 成员 public void RaisePostDataChangedEvent()
    {
    // TODO:  添加 myrcontrol.RaisePostDataChangedEvent 实现
    } public bool LoadPostData(string postDataKey, System.Collections.Specialized.NameValueCollection postCollection)
    {
    // TODO:  添加 myrcontrol.LoadPostData 实现
    Page.Response.Write(postCollection[this.UniqueID]);//捕获提交数据
    //postCollection[this.UniqueID];
    return false;
    } #endregion
    protected override void OnPreRender(EventArgs e)
    {   
    Page.RegisterClientScriptBlock("advv","<SCRIPT language=\"JScript\" src=\"adv.js\"></SCRIPT>");//注册js
    base.OnPreRender (e);
    } }
    }
    在其他的aspx页应用
    <%@ Page language="c#" Codebehind="test.aspx.cs" AutoEventWireup="false" Inherits="myc.WebForm1" %>
    <%@ Register TagPrefix="myuc" NameSpace="myc" Assembly="myc" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
    <HEAD>
    <title>WebForm1</title>
    <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
    <meta name="CODE_LANGUAGE" Content="C#">
    <meta name="vs_defaultClientScript" content="JavaScript">
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    </HEAD>
    <body>
    <form id="Form1" method="post" runat="server">
    <FONT face="宋体"></FONT>
    <myuc:myrcontrol runat="server" id="Myrcontrol1"></myuc:myrcontrol>
    </form>
    </body>
    </HTML>
      

  40.   

    /// <summary>
    /// 功能描述:点击按钮弹出确认对话框,选“yes”提交,“no”返回
    /// </summary>
    /// <param name="oPage">按钮控件所在页面(this.page)</param>
    /// <param name="btnConfirm">按钮控件ID</param>
    /// <param name="strMessage">弹出窗口的提示信息</param>
    public static void CheckConfirm(System.Web.UI.Page oPage,System.Web.UI.WebControls.ImageButton btnConfirm,string strMessage)
    {
    string strJavaScript;
    StringBuilder strbJavaScript= new StringBuilder();
    strbJavaScript.Append("<script language=javascript>\nfunction CheckConfirm_"+btnConfirm.ID+"()\n");
    strbJavaScript.Append("{\n return window.confirm('"+strMessage+"');}\n");
    strbJavaScript.Append("</script>");
    strJavaScript=strbJavaScript.ToString();
    if (!oPage.IsClientScriptBlockRegistered("CheckConfirm_"+btnConfirm.ID))
    {
    oPage.RegisterStartupScript("CheckConfirm_"+btnConfirm.ID,strJavaScript);
    }
    btnConfirm.Attributes["onClick"]="return CheckConfirm_"+btnConfirm.ID+"()";            
    }这个方法写在一个类里
    在要用到的aspx.cs的page_load里调用
    其原理就是用的JS
    用C#生成JS
    最后在客户端产生的代码就像我们以前写的HTML+JS一样
      

  41.   

    this.Response.Write("<script language='javascript'>");
    this.Response.Write("aa=window.confirm('您确定要删除帐号"+this.Request.Params["actid"].ToString()+"?');");
    this.Response.Write("if(aa==false){");
    this.Response.Write("window.location.href='usrlist.aspx?id=0'");
    this.Response.Write("}");
    this.Response.Write("if(aa==true)");
    this.Response.Write("{");
    this.Response.Write("window.location.href='del_usr.aspx'");
    this.Response.Write(" } ");  
    this.Response.Write("</script>");
      

  42.   

    btnDelete.Attributes.Add("onClick", "javascript:return confirm('确定删除吗?');")用这个就可以了!另外怎么用if...else判断“是”或“否”?
    不用判断,如果点击“是”的话会自动回后台服务器继续执行,如果是“否”则不进行任何操作。不用后台判断。-------------------------------------------------------------------------------------如果我想點“是”的時候去執行一個動作,點“否”的時候去執行另外一個動作,應該用什麼實現