事件未启动(onlick)

时间:2015-06-28 05:40:47

标签: javascript asp.net web onclick

尝试改变几乎所有东西(即runat =“server”,单双冒号) 这是尝试:

<head runat="server">

<script type="text/javascript" >

    function Decide() {

        document.getElementById('l').innerText = "after";

    }

</script>
</head>

<body>
    <form id="form1" runat="server">
        <button    onclick="Decide()">Click!</button>
        <asp:Label ID="l" runat="server">before</asp:Label>

    </form>
</body>

我做错了什么?

3 个答案:

答案 0 :(得分:0)

检查生成的html(源代码)以检查生成的标签是否具有相同的Id。标签的ID是服务器端Id,而不是客户端。这就是javascript找不到元素的原因。

将ClientId属性添加到标签控件(ClientId =“l”)并再次检查。

问候

答案 1 :(得分:0)

  1. 使用标签
  2. 的ClientId
  3. 停止发布表单,使用&#34;返回false&#34;

    <script type="text/javascript" >
    
       function Decide() {
    
          document.getElementById('<%=l.ClientID%>').innerHTML = "after";
           return false;
        }
    
     </script>
    </head>
    
        <body>
          <form id="form1" runat="server">
             <button    onclick=" return Decide()">Click!</button>
                <asp:Label ID="l" runat="server">before</asp:Label>
    
           </form>
       </body>
    

答案 2 :(得分:0)

这是错误。

document.getElementById('l').innerText = "after";

我尝试改变&#34; innerHTML&#34;而不是&#34; innerText&#34;。它奏效了。无论如何,谢谢大家!