我介绍一下我的情况,button触发后台事件,然后把值传给label呈现出去,
再点击Button 再把值用label呈现出去。现在问题出现了,第二次点击button的时候,我想让label的值先清空,然后执行button后台事件。这种情况如何实现。

解决方案 »

  1.   

    button 的click事件中写btnID.Attributes["onclick"] = "<script>document.getElementById('" + lblID.ClientID + "').value='';</script>";btnID 为button的IDlblID 为Label的ID
      

  2.   

    语法有错误?btnID.Attributes["onclick"] = " <script>document.getElementById('" + lblID.ClientID + "').value=''; </script>"; 
      

  3.   

                btnSubmit.Attributes["onclick"] = "<script>document.getElementById('" + lblLength.ClientID + "').value=''; </script>";这样写提示有语法错误
      

  4.   

    btnSubmit 的OnClientClick 你用到了么?
      

  5.   


    没有 我删掉了
    <asp:Button ID="btnSubmit" runat="server" CssClass="input2" OnClick="btnSubmit_Click"
                                                                        Text="生成验证码" Height="20px" />
      

  6.   


    <input type="submit" name="ctl00$ContentPlaceHolder1$btnSubmit" value="生成验证码" onclick="&lt;script>document.getElementById('ctl00_ContentPlaceHolder1_lblLength').value=''; &lt;/script>;" id="ctl00_ContentPlaceHolder1_btnSubmit" class="input2" style="height:20px;" />
    这是我页面执行后的源码
      

  7.   


    btnID.Attributes["onclick"] = "<script>document.getElementById('" + lblID.ClientID + "').value='';</script>";
      

  8.   


    <head runat="server">
        <title></title>
        <script type="text/javascript">
            function js() {
                $get('<%= Label1.ClientID %>').innerText = '';
            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server" ChildrenAsTriggers="False" 
            UpdateMode="Conditional">
            <ContentTemplate>
                <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
            </ContentTemplate>
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
            </Triggers>
        </asp:UpdatePanel>
        <div>
        
            <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" OnClientClick="js();" />
        
        </div>
        <asp:UpdateProgress ID="UpdateProgress1" runat="server">
            <ProgressTemplate>
                Updating...
            </ProgressTemplate>
        </asp:UpdateProgress>
        </form>
    </body>
      

  9.   

    你看一下 生成的html 代码就知道了
    onclick="&lt;script>document.getElementById('ctl00_ContentPlaceHolder1_lblLength').value=''; &lt;/script>;" < 被换成了 &lt; 
      

  10.   

    糊涂了~ 这样就行btnID.Attributes["onclick"] = "document.getElementById('" + lblID.ClientID + "').value='';";
      

  11.   

    btnID.OnClientClick = "Javascript:document.getElementById('" + lblID.ClientID + "').value='';return true;";
      

  12.   

    至少,Label到了客户端变成<span>后,你怎么用value赋值啊?应该是innerText或innerHTML吧?
      

  13.   

    .NET(C#)技术交流 35032539 
    .NET(C#)技术交流 35032539 
    .NET(C#)技术交流 35032539 
      

  14.   

    正确一大早来了就发昏btnID.Attributes["onclick"] = "document.getElementById('" + lblID.ClientID + "').innerText='';";
      

  15.   

    是刷新验证玛吗?直接用图片控件,URL地址就写产生验证玛的。ASPX页,一点就刷新
      

  16.   

    btnID.Attributes.Add("onclick"," <script>document.getElementById('" + lblID.ClientID + "').value=''; </script>");