我在ASP.NET 中的页面隐藏页面中 页面名字如:PopedomPoperyInfo.asp.cs 中,怎么在代码中弹出个对话框让用户选择是或否操作
选择是继续,选择否退出当前操作?

解决方案 »

  1.   

     protected void Page_Load(object sender, EventArgs e)
        {
            Button1.Attributes.Add("onclick", "return confirm('你确定吗?');");
        }
      

  2.   

    要放在page_load事件里注册这段js脚本。
      

  3.   

    不是这个,比如我在一个Button按钮事件里面点击时比较一个数据,如过相等就弹出个对话框让用户点击‘是’ 就继续,点击‘否’就撤销比较的数据?
    该怎么用代码写这个对话框啊?
    类似这个(Button1.Attributes.Add("onclick", "return confirm('你确定吗?');"); )但问题是它只是给该按钮添加个属性而已?
      

  4.   

    我从数据库查询出来数据赋予给变量 num 然后判读 文本输入的值 text 是否相同,相同就用一个对话框提示用户已经有这个值了是否继续添加,
    if(num == text)
    {
    Button1.Attributes.Add("onclick", "return confirm('是否继续添加?');"); 
    点击是添加到数据库,点击否退出
    }
    else
    {
    ........
    }
      

  5.   

    这样的话,需要回传
    试一下下面的代码能不能满足你的要求:
    HTML:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>Untitled Page</title>
        <script type="text/javascript">
       function ConfrimMe(value)
        {
            if(value=="1")
            {
                return confirm("确定删除?");
            }
        }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            &nbsp;<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:Button ID="Button1"
                runat="server" Text="Button" OnClick="Button1_Click" />
            <asp:Label ID="Label1" runat="server"></asp:Label></div>
        </form>
    </body>
    </html>cs:
        protected void Button1_Click(object sender, EventArgs e)
        {
           Label1.Text = "<script>ConfrimMe('" + TextBox1.Text + "');</script>"; 
        }
    不满足的话要用特别的方法了。比如AJAX之类的。
      

  6.   


    public void Button1_Click(object sender,eventargs e)
    {
        int a=convert.toint32(textbox1.text);
        int b=convert.toint32(textbox2.text);
        if(a>b)
        {
            Button1.Attributes.Add("onclick", "return confirm('你确定吗?');"); 
        }
    }
      

  7.   


    说得非常劲道,要传值必须ajax
      

  8.   

    用 AJAX 怎么做啊?请教高手!
    能帮忙解决下吗?
      

  9.   

      //后台
     if ("符合相等的条件")
       {
            //执行前台的一个脚本,触发一个隐藏的按钮事件
            ClientScript.RegisterStartupScript(this.GetType(), "alert", "<script language='javascript'> RemoveProductData()</script>");
       }
       else
       {
           //...
       }
    //前台写个脚本,触发一个按钮,看是否继续添加    <script language="javascript" type="text/javascript">
            function RemoveProductData()
            {
                ShowConfirm("确认操作" ,"本月数据已经导入,是否覆盖本月数据?","document.getElementById('<%=btnDeleteProduct.ClientID %>').click()");
            }
        </script>  <asp:Button runat="server" ID="btnDeleteProduct" OnClick="btnDeleteProduct_Click" />
      

  10.   

    放弃吧,没javascrip服务端代码不知道怎么实现。
      

  11.   

    呵呵,有一种可行,但不是好的办法,那就是添加引入windows.form中的messagebox,
    那样不就在asp.net中实现了你的想法吗?
    不过上面给控件添加属性的方法我觉得也是很好的方法,为何不采用呢?
      

  12.   

    简单点的实现办法就是 
    自己用DIV模拟提示窗口...
      

  13.   

    cs在服务端的,你必须传到前台用户才能看到啊。所以只能借助js来实现。
    webform和winform是不同的。做法也不同如果使用ajax,则需要在url好吗传递参数,服务器端菜能知道你点的是还是否
      

  14.   

    我从数据库查询出来数据赋予给变量 num 然后判读 文本输入的值 text 是否相同,相同就用一个对话框提示用户已经有这个值了是否继续添加, 
    if(num == text) 

    Button1.Attributes.Add("onclick", "return confirm('是否继续添加?');"); 
    点击是添加到数据库,点击否退出 

    else 

    ........ 
    }
    *************************************************************************************
    这样来实现:if(num == text) 

    Button1.Attributes.Add("onclick", "if(confirm('是否继续添加?')){document.location.href='继续添加.aspx'}else{document.location.href='不添加页.aspx'};"); 

    else 

    ........ 
    }
      

  15.   

    参考:<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication1._Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title></title>
        <script type="text/javascript">
            function dosomething() {
                document.getElementById("<%= Button1.ClientID %>").click();
            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:HiddenField ID="HiddenField1" runat="server" />
            <asp:Button ID="Button1" runat="server" Text="Button" style="display:none" OnClick="Button1_Click" />
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <asp:Button ID="Button2" runat="server" Text="Button" OnClick="Button2_Click" />
        </div>
        </form>
    </body>
    </html>
    using System;namespace WebApplication1
    {
        public partial class _Default : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {        }        protected void Button2_Click(object sender, EventArgs e)
            {
                if (TextBox1.Text == "3")
                {
                    HiddenField1.Value = "6";
                    this.Page.ClientScript.RegisterStartupScript(this.GetType(), "Js", "if(confirm('你确定吗?'))dosomething();", true);
                }
                else
                {
                    this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "JS", "alert('Hello');", true);
                }
            }        protected void Button1_Click(object sender, EventArgs e)
            {
                this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "Js2", "alert('HiddenField里的值为" + HiddenField1.Value + ",你可以在Button1_Click中进行数据库操作');", true);
            }
        }
    }
      

  16.   

    Ajax或者自己用一个空白页面来做弹出窗口,判断是否需要跳到那页面,如果需要,在自定义弹出页面做选择后再回来,这样容易实现,也灵活。
      

  17.   

         protected void LinkButton1_Click(object sender, EventArgs e)
        {
            Response.Write("和数据库交互");
        }
     function clicked()
     {
        if(confirm("Are you?"))
        {<%=Page.GetPostBackEventReference(LinkButton1)%>;
        return true;
        }
        else{
        return false;
        }
        
     }
     <asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click"></asp:LinkButton>
    <asp:CheckBox ID="CheckBox2" runat="server" Text="haha" OnClick="return clicked();" />  //让一个按钮在服务器端帮你执行你要的操作
      

  18.   

    给你个不用框架的AJAX方法,要用框架会简单很多。新建Default4.aspx
    HTML:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default4.aspx.cs" Inherits="Default4" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>Untitled Page</title> 
        <script language="javascript" type="text/javascript">
            var xmlHttp;
            
            function createXMLHttpRequest(){
                if(window.ActiveXObject){
                    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
                }else {
                    xmlHttp = new XMLHttpRequest();
                }
            }
            
            function showEnter(){ 
                createXMLHttpRequest();
                xmlHttp.onreadystatechange = showContent;
                var url = "Server.aspx";//去后台取数据库的值,也可以在数据库进行比较。
                xmlHttp.open("GET", url, true);
                xmlHttp.send(null);
            }
            
            function showContent(){
                if(xmlHttp.readyState == 4){
                    if(xmlHttp.status ==200){
                     var ret = xmlHttp.responseText;
                     var myText = document.getElementById("TextBox1").value;
                     if(ret == myText)
                     {
                        if (confirm('你确定吗?'))
                        {
                           document.getElementById("<%= hdnDeleteButton.ClientID %>").click();
                        }
                     } 
                    }
                }
            }
        </script> 
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <input id="btnDelete" type="button" value="删除" onclick="showEnter();" />
            <asp:Button ID="hdnDeleteButton"  runat="server" Text="" Width="0" Height="0" OnClick="hdnDeleteButton_Click" />
         </div>
        </form>
    </body>
    </html>
    .cs 代码:    protected void Page_Load(object sender, EventArgs e)
        {    }      protected void hdnDeleteButton_Click(object sender, EventArgs e)
        {
            Response.Write("删除成功!");
        }
    新建server.aspx
    HTML:(其实是空的)
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Server.aspx.cs" Inherits="Server" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>Untitled Page</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
        
        </div>
        </form>
    </body>
    </html>
    .cs代码:
    protected void Page_Load(object sender, EventArgs e)
        { 
            string content = "1";//数据库里的值。        Response.Clear();
            Response.Buffer = true;
            Response.Write(content);
            Response.ContentType = "text/xml";
            Response.Charset = "utf-8";
            //this.EnableViewState = false;        Response.End(); 
        }