$(文件)。已经不工作了

我试图用ASP.NET运行jQuery和WebMethods; 我在主页面上添加了一个ScriptManager,在内容页面上添加了一个内容

  $(document).ready(function () { alert("hi"); });   

然而这永远不会发生,我错过了什么?

validation以下步骤。

  1. 你有jquery吗?
  2. 检查萤火虫的错误

那些东西应该解决问题

ready停止工作的一种可能性是你在某个地方有javascript代码,它在$(document).ready(...)$(...)调用中抛出一个exception,它停止处理其余的ready块。 确定发生这种情况的单个页面,并检查其他地方是否存在可能的错误。

而不是使用这个:

 $(document).ready(function() { /* your code */ }); 

用这个:

 jQuery(function($) { /* your code */ })(jQuery); 

它更简洁并且做同样的事情,它也不依赖于$变量作为jQuery对象。

如果主机页面是HTTPS并且包含的​​javascript源路径是HTTP,则会发生这种情况。 这两个协议必须相同,HTTPS。 告诉尾标将在Firebug下进行检查,并注意到JS被“拒绝访问”。

我从其他一些.php项目中复制粘贴了我的内联js ,在那段代码里面有一些php代码输出一些值,现在因为变量没有在我的新文件中定义,所以它产生了典型的php undefined warning/error ,因为js代码被搞砸了,并且没有响应任何事件,甚至是alert("xyz"); 会默默地失败!! 虽然错误的线路接近文件的末尾,但js也会死掉,

没有任何错误!!! > 🙁

现在有一件事令人困惑的是,调试器控制台/输出没有提供任何提示/错误/警告, js正在默默地死亡。

因此,请尝试检查您是否使用js内联编码,并查看是否输出任何错误。 一旦删除/排序你的js应该工作正常。

 function pageLoad() { console.log('pageLoad'); $(document).ready(function () { alert("hi"); }); }; 

它的ScriptManager ajax使问题使用pageLoad()而不是

一种可能性,看看:

  

VS

  

第一种方法实际上是错误的,但浏览器根本没有抱怨。 您需要确保您确实以正确的方式关闭了javascript标记。

我遇到了类似的问题,但我用这种方式解决了这个问题:

 // wait until DOM is loaded $(document).ready(function(){ console.log("DOM is ready"); // wait until window is loaded (images, links etc...) window.onload = function() { console.log("window is loaded"); var your_html_element = document.getElementById("your_html_element_ID"), }; });