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

时间:2011-05-22 04:12:07

标签: jquery asp.net ajax

我正在尝试使用ASP.NET运行jQuery和WebMethods;我已将ScriptManager添加到母版页,并在内容页上添加了内容

<asp:Content ID="ch" ContentPlaceHolderID="cHead" runat="server">
    <script language="javascript" type="text/javascript">
       $(document).ready(function () {
          alert("hi");
       });
    </script>
</asp:Content>

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

9 个答案:

答案 0 :(得分:29)

验证以下步骤。

  1. 您是否包含jquery
  2. 检查firebug中的错误
  3. 那些事情应该解决问题

答案 1 :(得分:21)

ready停止工作时的一种可能性是,您在$(document).ready(...)$(...)调用中的某个地方发出了javascript代码,该代码正在停止处理ready或{{1}}的其余部分{1}}块。确定发生这种情况的单个页面,并检查其在其他地方是否存在错误。

答案 2 :(得分:8)

而不是使用它:

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

使用此:

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

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

答案 3 :(得分:1)

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

答案 4 :(得分:1)

我从其他js项目中复制粘贴了我的内联.php,在该代码块中有一些php代码输出了一些值,因为变量不是&#39;在我的新文件中定义,它产生了典型的php undefined warning/error,因此js代码被搞砸了,并且没有响应任何事件,即使alert("xyz");也会默默地失败!!虽然错误的行接近文件的末尾,但js仍然会死掉,

没有任何错误! &GT;:(

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

因此,请尝试检查您是否php使用js进行内联编码,并查看是否输出了任何错误。删除/排序后,js应该可以正常工作。

答案 5 :(得分:1)

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

它的ScriptManager ajax解决了这个问题 使用pageLoad()代替

答案 6 :(得分:0)

一种可能性,看看:

<script language="javascript" type="text/javascript" src="./jquery-3.1.1.slim.min.js" />

VS

<script language="javascript" type="text/javascript" src="./jquery-3.1.1.slim.min.js"></script>

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

答案 7 :(得分:0)

  
      
  • 在jQuery链接后检查是否必须编写或加载脚本。
  •   

<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script>

//after link >> write codes...

<script>
    $(document).ready(function(){
      //your code
    })(jQuery);
</script>

答案 8 :(得分:-1)

我有一个类似的问题,但是我是这样解决的:

// 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"),

    };
});