困扰了我好久了

解决方案 »

  1.   

    你的逻辑有问题
    比如说一个提交的服务器按钮,在 page_load 里加入 Attributes.Add ("onclick....的代码,
    当你点击这个按钮的时候会弹出提示框,如果点击了"是",就会执行这个按钮事件里的代码。
      

  2.   

    在页面定义一个变量var myselect,
    然后Label1 .Attributes.Add ("onclick","myselect=confirm('确认吗?');")的返回值
    然后就可以使用这个值了。
    不过更好的办法是写一个方法function mymethod(){...},然后
    然后Label1 .Attributes.Add ("onclick","if(confirm('确认吗?'))mymethod();")
      

  3.   

    Label1 .Attributes.Add ("onclick","return confirm('确认吗?');")Label有后台事件需要继续响应么?这样的代码一般用于为Button添加一个JS用来提示用户是否继续下一步操作,如果confirm('确认吗?');用户点否的话那么Button 的submit事件就会终止
      

  4.   

    我代码改成这样了,却发现不执行myMethod();
    private void Page_Load(object sender, System.EventArgs e)
    {

    // 在此处放置用户代码以初始化页面
    if(!IsPostBack)
    {
    string award1=System.Configuration .ConfigurationSettings.AppSettings["award1"];
    if(award1=="true")
    {

    this.Label1 .Attributes.Add ("onclick","if(confirm('确认吗?'))myMethod();");
    }
    }
    }
    private void myMethod()
    {
      WriteXml("award1","false");
    }
      

  5.   

    不知楼主想做什么?
      你是想提示确认后执行一个javascript脚本?还是执行一个.cs方法?
      

  6.   

    你是不是要这样的效果?Label1 .Attributes.Add("onclick","if(!confirm('确认吗?'))return false;");
      

  7.   

    不需要取得这个值。首先,confirm()语句会被执行,用户看到一个确认对话框。如果用户选择“是”,则confirm() == true,否则confirm() == false。然后,return confirm()也就相当于return true或者return false,是什么根据上面所说的决定。如果是return true,则事件冒泡继续,如果该按钮也是提交按钮的话就会进行提交工作;如果是return false,事件冒泡终止,即使该按钮是提交按钮,提交也不会被执行。
      

  8.   

    我的意思是对话框一旦弹出来,用户点击确定按钮,就执行WriteXml("award1","false");
    WriteXml("award1","false");是一个改变web.config文件一个key的value的方法。
    当用户点击取消就不执行WriteXml("award1","false");
    大家明白我的意思吗?
      

  9.   

    明白,但confirm()不行,
    可以想别的方法,例如弹出个模态窗口,这个可以取到值.
      

  10.   

    你的思路有问题,一个是客户端,一个是服务器端,怎么能执行呢?我想在客户端会提示你javascript错误吧,那就更不用谈执行myMethod()了。你用下面的方法试一下:你不要用lable,在网页上放一个LinkButton,然后在后台编码中用下面的方法。private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面
    LinkButton1.Attributes.Add("onclick","javascript:return confirm('确认吗?')");
    }

    private void LinkButton1_Click(object sender, System.EventArgs e)
    {
    WriteXml("award1","false");
    }
      

  11.   

    public void Confirm(string str_Message,string btn)
    {
        Page.RegisterStartupScript("", @"<script> if (confirm('" + str_Message + "')==true){document.all." + @btn + @".click();}</script>");
    }parameters str_Message:要显示的文本内容;
    parameters btn:按钮控件的ID(不管是asp:button还是input type=button,后边都要加runat="server",可以隐藏,但不能用visible=false隐藏,可以用style="display:none"的方式)然后在代码中写btn控件的onClick事件就行了
      

  12.   

    你的代码完全有问题,在客户端代码嵌套了服务端的代码,这样是错误的
    如果按照你的思路应该要加个隐藏按钮(高度或者宽度为0),按钮的后台代码是所谓的mymethod()方法,而你的attributes.add("onclick","myclientmethod();");
    myclientmethod前台方法是
    function myclientmethod()
    {
        if(confirm(aa))
           document.all.button.click();
        else
           return false;
    }