我的代码如下: 
protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            signOutB.Attributes.Add("onclick", "return window.confirm(\"你确定要注销吗?\");");
        }
    }
protected void signOutB_Click(object sender, ImageClickEventArgs e)
    {
        FormsAuthentication.SignOut();
        Response.Redirect("login.aspx");
    }
当我点击Confirm取消后,还是发生了回送,执行了signOutB_Click事件,请问该语句到底怎么写?

解决方案 »

  1.   

    signOutB.Attributes.Add("onclick", "return window.confirm(\"你确定要注销吗?\");");
    别在ispostback的约束试试.
    看一下生成的HTML语句
      

  2.   

    <input type="image" name="signOutB" id="signOutB" src="pic/signout.png" alt="注销" onclick="javascript:return window.confirm(&quot;你确定要注销吗?&quot;);" style="border-width:0px;" />
    这是完全正常的,
    如果不在ispostback也是一样的,点击取消跟点击确定的效果一样
      

  3.   

    onclick里面还有.net附加的验证代码
      

  4.   

    经过我的测试,发现在IE7.0中就会出现这种问题,而在Maxthon浏览器中就是正常的.
    请问高手们这怎么解释?
      

  5.   

    我觉的还是先写个javascript .而且先把form的onsubmit="return false;"
    然后触发confirm时..
    if (confirm())
    {
        document.form1.onsubmit();
    }
      

  6.   

    signOutB.Attributes.Add("onclick", "if(!confirm('你确定要注销吗?')){event.returnValue = false;}");
      

  7.   

    jojosnail(Snail) 的方法是正确的.
    如果改成:
    if(confirm('你确定要注销吗?')){event.returnValue = true;}
    也不行!只有像jojosnail(Snail) 一样才行!