为什么Jquery不使用asp.net?

这不起作用,我不明白为什么,我已经尝试了W3schools上的代码,并且工作正常,我认为问题可能是参考或者其他什么,我是ASP.NET的新手

ASP代码(母版页)

  $(document).ready(function () { $("#bt_insertar").click(function () { alert("Handler for .click() called."); }); });    

的Index.aspx

     

默认情况下,您为runat="server"控件提供的id不是最终在DOM元素上的id 。 您可以从服务器端控件对象上的ClientID属性获取ASP.Net生成的ID。 例如,改变:

 $("#bt_insertar").click(... 

 $("#<%= bt_insertar.ClientID%>").click(... 

…如果该代码在页面中ASP.Net解析(而不是外部JavaScript文件)。

从ASP.Net 4开始,您可以通过ClientIDMode属性控制此行为。 例如,如果您使用Static模式( control.ClientIDMode = CLientIDMode.Static; ),那么ID实际上是按原样传递的。 但ClientIDMode的默认值是Predictable ,它会修改您使用的ID

要将jquery函数绑定到Asp.net Server控件,您必须以这种方式编写代码。

  

几点:

  1. 在你的JQuery include语句中,src应该是src="../Scripts/jquery-1.4.1.js"而不是src="./Scripts/jquery-1.4.1.js"
  2. 您实际上不需要在document.ready事件中绑定click事件,而是可以包含OnClientClick="bt_insertar_Click();" 在你的asp:Button

然后你可以定义你的function bt_insertar_Click()

   

为您的网页使用单独的.js文件是一种更好的编程习惯,因此您可以将所有相关的js函数移动到此js文件,然后像使用jquery文件一样包含它。