在 add.aspx.CS 文件中:
protected void imgbtnSubmit_Click(object sender, ImageClickEventArgs e)
{
  //执行完提交操作
  //我想在这里写一段 js 脚本,实现用户的确实操作:   “您是否还要继续填加新的文章”,如果用户点击 “确定”,就返回原页面(或是跳转到某一固定页面,比如:add.aspx),
如果用户点击 “取消” ,则关闭当前窗口,即 add.aspx. Response.Write("<script>在这里实现上述功能,要如何写 js 代码呢</script>");}
求高手帮忙!万分感谢!

解决方案 »

  1.   

    <asp:LinkButton ID="stopuser" runat="server" CausesValidation="False" 
                                    CommandArgument='<%# Eval("id") %>' CommandName="Select" Text="添加文章" 
                                    onclientclick="return confirm('您是否还要继续填加新的文章?')"></asp:LinkButton>
      

  2.   

    lihongdian :我的意思就是要在 aspx.CS 中执行完所以提交操作后
    再按照用户的不同需求
    或是回到原页面,或是关闭窗口,你的答案不是我说的意思。
      

  3.   

    protected void Page_Load(object sender, System.EventArgs e)
    {
    if ( !Page.IsPostBack )
    {              
                    webTools.InsertConfirmOnButtonClick(this.lbtnDeleteCode, "您确实要删除所选数据吗?", commandInputCode);
    }
    } protected void lbtnDeleteCode_Click(object sender, System.EventArgs e)
    {
                if (commandInputCode.Value != "undefined")
                {
                    switch ((Enum_YesOrNo)Convert.ToInt16(commandInputCode.Value))
                    {
                        case Enum_YesOrNo.Yes:
                            ModuleAssistCodeGrid.DeleteAssistCode();
                            break;
                        case Enum_YesOrNo.No:
                            return;
                            break;
                    }
                }
    }
      

  4.   

    <script language="javascript" type="text/javascript">    function OpenConfrimWindwo()
        {   
            var ret = confirm('提示:\r\n是否要删除当前人员?警告:删除后当前人员下的办件也将被删除!\r\n您确认要提交吗?');
            if(ret)
            {
                <%=PostBack()%>
            }
            else
            {
                return false;
            }
            return;
        }
       
        
    </script><script language="javascript" type="text/javascript"> 
    function keyDown() 

    var keycode=event.keyCode; 
    if(keycode==13) 
    {
     var btt = document.getElementById("UserGridModule1_btnSearch");
    btt.focus();
    }
     protected void btnDel_Click(object sender, EventArgs e)
            {
                //string id = string.Empty;            Page.RegisterStartupScript("confrim", "<script>  OpenConfrimWindwo();</script>");
                if (!ValidateTrue())//如果用户点了否则退出程序 不继续执行
                {
                    return;
                }        }
            private const string CALLBACK_KEY = "IsCallBackResult";
            protected string PostBack() //定义POSTBACK脚本参数
            {
                return Page.GetPostBackEventReference(btnHiddent, CALLBACK_KEY);
            }        protected void btnHiddent_ServerClick(object sender, EventArgs e)
            {            string id = string.Empty;
                foreach (DataGridItem item in this.dgData.Items)
                {
                    CheckBox chk = (CheckBox)item.FindControl("chkMark");
                    if (chk.Checked)
                    {
                        id += item.Cells[1].Text + ",";
                    }
                }
                if (id.Length > 0)
                {
                    id = id.Substring(0, id.Length - 1);
                    if (new FileFlowSystem(this.UserSessionID).DeleteUserRenYuan(id))
                    {                    BindGrid(String.Empty, String.Empty);
                    }
                    else
                    {
                        webTools.InsertAlert(this.Page, "删除失败!");
                    }
                }
                else
                {
                    webTools.InsertAlert(this.Page, "请选择要删除项!");
                }
            }
            private bool ValidateTrue()
            {
                if (Request["__EVENTARGUMENT"].Trim().Equals(CALLBACK_KEY))
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }

    } document.onkeydown=keyDown; 
    </script><input id="btnHiddent" visible="false" type="submit" value="submit" runat="server"
        onserverclick="btnHiddent_ServerClick" />
      

  5.   

    Response.Write(" <script>if (confirm('您是否还要继续填加新的文章?')) { window.location.href='http://www.baidu.com'; return false;}</script>"); 
      

  6.   


    Response.Write("  <script>if (confirm('您是否还要继续填加新的文章?')) { window.location.href='http://www.baidu.com'; return false;} </script>"); 以上代码放到 aspx.CS 里根本不执行啊 ?!
      

  7.   

    this.button1.AddArich..("onclick","return confirm('')");
      

  8.   

    protected void imgbtnSubmit_Click(object sender, ImageClickEventArgs e) 

      //执行完提交操作 
      //我想在这里写一段 js 脚本,实现用户的确实操作:    “您是否还要继续填加新的文章”,如果用户点击 “确定”,就返回原页面(或是跳转到某一固定页面,比如:add.aspx), 
    如果用户点击 “取消” ,则关闭当前窗口,即 add.aspx.   this.Attributes["onclick"]="return confirm(确定要执行操作吗?);";
      

  9.   

    楼主首先要明白web的工作方式首先它是区分为服务器端和客户端的Response.Write这样的C#语句是在服务器上执行
    Confirm这样的js语句是在客户端执行当js的确认对话框弹出来的时候是在你的机器上的浏览器中产生了一个阻塞,等待确认,这个时候与服务器毫不相关,服务器可能在美国,他不知道你这里点击了什么。所以在你的机器上是无法阻塞服务器的,而且也不可以这么做。
      

  10.   

    protected void imgbtnSubmit_Click(object sender, ImageClickEventArgs e) 

      //执行完提交操作 
      //我想在这里写一段 js 脚本,实现用户的确实操作:        Page.ClientScript.RegisterStartupScript(GetType(),"","<script>if(confirm('您要继续添加吗?'))window.open('add.aspx','_self')else {window.opener=null;window.close();}</script>");} 
      

  11.   

    js只能做js该做的事情,实际上就是操作你本地的浏览器,他没有办法干涉到服务器端代码如何运行。非要他和服务器充分交互就只能用ajax这样的方式重新对服务器发送请求
      

  12.   

    Page.ClientScript.RegisterStartupScript(GetType(),""," <script>if(confirm('您要继续添加吗?'))window.open('add.aspx','_self')else {window.opener=null;window.close();} </script>"); -------------------基本是我想要的功能,但是以上代码在实际中根本不执行!!
      

  13.   

    不好意思!那个if(confirm('您要继续添加吗?'))window.open('add.aspx','_self')else 要改为
    if(confirm('您要继续添加吗?'))window.open('add.aspx','_self')  else 
    中间有空格
      

  14.   

    if(confirm('您要继续添加吗?'))window.open('add.aspx','_self');  else 
      

  15.   


    protected void imgbtnSubmit_Click(object sender, ImageClickEventArgs e)  
    {  
      //执行完提交操作  
      //我想在这里写一段 js 脚本,实现用户的确实操作:        Response.Write("<script>window.alert('此信息成功发送!');window.opener=null;window.close();</script>"); }  以上代码执行正确,但是以上代码实现的是当执行完提交后,弹出一个对话框“此信息成功发送”,然后,点击,确定后,关闭此窗口,以上代码执行一切正常。-------------------我现在想实想的就是:也是弹出一个确认框,不过,这个确认框需求变了一下: 改为“您是否还要继续填加新的文章”,如果用户点击 “确定”,就返回原页面(或是跳转到某一固定页面,比如:add.aspx), 
    如果用户点击 “取消” ,则关闭当前窗口,即 add.aspx. 
    --------------我感觉我想实想的功能和要求是很正常的,在 .CS 文件代码中弹出 js 的对话框也是很正常的,而且我贴出的代码已经实现了,只不过,我现在的要求变化一下,为什么jinjazz  这个两个红星的大侠说出"js只能做js该做的事情,实际上就是操作你本地的浏览器,他没有办法干涉到服务器端代码如何运行。非要他和服务器充分交互就只能用ajax这样的方式重新对服务器发送请求"
    这样的话,我也是很不理解
      

  16.   

    页面:
    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Add.aspx.cs" Inherits="MyVs2008.Add" %><!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 language="javascript" type="text/javascript">
    <!--
    //确认:
    //HiddenFieldClientID为隐藏控件HiddenField1的客户端ID
    function test(HiddenFieldClientID)
    {
        //确认
        if(confirm("确认添加吗?"))
        {
            //确认后给个字符串值"true"
            document.getElementById(HiddenFieldClientID).value = "true";    }
        else
        {
            //确认后给个字符串值"false"
            document.getElementById(HiddenFieldClientID).value = "false";
        }
        return true;
        
    }
    //-->
    </script>
    </head>
    <body>    <form id="form1" runat="server">
        <div>
            <!-- 隐藏控制 -->
            <asp:HiddenField ID="HiddenField1" runat="server" />
            <!-- 确认 -->
            <asp:Button ID="Button1" runat="server" Text="Add" onclick="Button1_Click" />
        </div>
        </form>
    </body>
    </html>
    后台代码
    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;namespace MyVs2008
    {
        public partial class Add : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                //脚本注册
                if (!Page.IsPostBack)
                {
                    this.Button1.Attributes.Add("onclick","return test('"+ this.HiddenField1.ClientID +"');");
                }
            }        protected void Button1_Click(object sender, EventArgs e)
            {
                //得到确实的值
                string temp = this.HiddenField1.Value;
                //确认
                if (temp == "true")
                {
                    //调转到sina
                    Response.Write("<script language='javascript'>parent.location.href='http://www.sina.com.cn';</script>");
                }
                else
                {
                    //关闭
                    Response.Write("<script language='javascript'>window.close();</script>");
                }
            }
        }
    }
      

  17.   

        function confirmFun()
            {
             if (confirm('您是否还要继续填加新的文章?'))
             {
                window.open("http://www.baidu.com");
             
                 return true;
              }
            }    在page_load事件中添加btnAdd按纽的客户端事件:
       abtAdd.attribute.add("onclick","confirmFun();");
      

  18.   

    楼主真要这样做的话可以这样:add.aspx页面: onload中写一段js,判断一个隐藏域中的一个值(假设默认为0)当第一次进页面的时候判断隐藏域为0就不弹出对话框,为1则弹出那么cs页面中..你提交完数据后就把这个隐藏域的值置为1大概是这样.比较笨的方法..要好好控制一下状态.
      

  19.   

    protected void Button1_Click(object sender, EventArgs e) 
            { 
                //得到确实的值 
                string temp = this.HiddenField1.Value; 
                //确认 
                if (temp == "true") 
                { 
                    //调转到sina 
                    Response.Write(" <script language='javascript'>parent.location.href='http://www.sina.com.cn'; </script>"); 
                 ///****************我这里不但是可以调转页面。还可以进行后台代码编写
                   //采用隐藏控件做是最好的。当然如果只是调转可以完全在JS里写。类似楼上的说的
                } 
                else 
                { 
                    //关闭 
                    Response.Write(" <script language='javascript'>window.close(); </script>"); 
                } 
            } 
      

  20.   

    在此强烈感谢  damiaobest ,最终完美的解决了我的问题,跟大家分享一下 damiaobest 的成果。答案1: Page.ClientScript.RegisterStartupScript(GetType(), "", "<script>if(confirm('您要继续添加吗?'))window.open('SendLabourApplication.aspx','_self'); else {window.opener=null;window.close();}</script>");此方法是 可以跳转到你任意指定的页面答案2: 
     Page.ClientScript.RegisterStartupScript(GetType(), "", "<script>if(confirm('您要继续添加吗?')==false){window.opener=null;window.close();}</script>"); 此方法是只回到本页面。
      

  21.   


      Response.Write("<script>if (confirm('continue...???')) {window.location = '" + Request.Url + "'} else {window.location.href='Default.aspx'}</script>");
      

  22.   

    不好意思,我确实没有看清楚你的题目,我还以为你的想在c#中取得js语句confirm函数的返回值.