监听器没有从我的Jquery处理我的ASP.NET按钮

时间:2014-03-18 14:33:18

标签: javascript jquery html asp.net html5

基本上我的Jquery没有触发我的ASP.NET中的onclick按钮,我不熟悉使用Jquery所以我不确定我的语法是否正确。我显然是通过<body>onload调用它。我的代码在下面,所以我只是寻求帮助尝试找到它为什么不能加载,所以我的实际问题是:为什么我的Jquery函数从我的按钮加载?

<head runat="server">
   <title>Fire Test</title>
   <link id="stylesheet" href="ControlStyle.css" rel="stylesheet" type="text/css" runat="server" />
   <meta name="viewport" content="width=device-width; initial-scale = 1.0; maximum-scale=1.0; user-scalable=no" />
   <script type="text/javascript" src="~/Production/jquery.js"></script>
   <style type="text/css">
      .style1
      {
          font-size: x-large;
      }
   </style>
   <script type="text/javascript">
       function init() {
       $("#OkBtn").on("click", alertFire);
           function alertFire() {
              alert("Update Successful!");
           }
       }

   </script>
</head>
<body background="../icons/Building-Confidence-logo.jpg" onload="init();">

3 个答案:

答案 0 :(得分:3)

尝试

$("#<%=OkBtn.ClientID%>").on("click", alertFire);

此外,您无需单独创建功能

你可以去:

$("#<%=OkBtn.ClientID%>").on("click", function(){
        alert("Update Successful!");
    });

<强>更新

而不是在body加载时使用init,为什么不使用jquery load event

<script>
    $(function(){
        $("#<%=OkBtn.ClientID%>").on("click", function(){
            alert("Update Successful!");
        }); 
    });
</script>

修改

可能有一件事是jQuery没有正确加载。您收到的错误是$ is undefined

尝试删除所有脚本块并将其放入

<script>
    $(function(){ 
        alert("Hello"); 
    });
</script>

如果没有弹出&#34;你好&#34;在每个页面刷新然后问题是这一行和加载jquery

<script type="text/javascript" src="~/Production/jquery.js"></script>

答案 1 :(得分:1)

您需要在$(function() { });

中绑定您的onclick

所以:

$(function(){
   $("#<%= OkBtn.ClientID %>").on("click", alertFire);
});

编辑:

根据您的修改,从body加载中删除Init。

答案 2 :(得分:-1)

试试这个:

$(document).ready(function(){
   $("#OkBtn").click(function() {
      alert("Update Successful!");
   });
});

请勿将其放入init功能