Jquery函数没有触发

时间:2014-08-22 10:54:20

标签: jquery click

我正在学习JQuery,遇到一个简单的代码问题。

当我点击#needle时,它应该切换#leftmenu。但#needle的点击功能根本没有触发。甚至尝试了一些其他元素点击功能(例如img / button..etc。)而不是#needle div,但两者都没有用。

这是Masterpage:

<html xmlns="http://www.w3.org/1999/xhtml">
 <head runat="server">
    <title></title>
    <link href="Style/style.css" rel="stylesheet" />
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
    <script src="js/js_default.js"></script>
     <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
</head>
<body>
    <form id="form1" runat="server">
    <div id="pageContent">
        <div id="header">
            <div id="top">
               //..
            </div>
        </div>
        <div id="content"> 
                <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">

                </asp:ContentPlaceHolder>
        </div>
        <div id="footer">
           //..           
        </div>
    </div>
    </form>
</body>
</html>

这是HTML:

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
   <div id="container">
           <div id="leftmenu">
             //some menu..       
           </div>
           <div id="needle">
               //..
           </div>
       <div id="stid">
            //..           
       </div>
       <div id="stin">
         //..
       </div>
    </div>
</asp:Content> 

和JQuery

$(document).ready(function () {
    $("#needle").click(function () {
        $("#leftmenu").toggle();
    });   
});

2 个答案:

答案 0 :(得分:0)

您的代码正常JSFIDDLE DEMO

可能是加载了两个版本的jQuery(不推荐使用),从第二个版本调用$.noConflict( true )会将全局范围的jQuery变量返回给第一个版本的jQuery变量。 More INFO

答案 1 :(得分:0)

有一段时间我问了这个问题,但我发现了问题:

我使用文件夹来组织aspx页面。有子文件夹很好组织,但它有一些问题,因为JQuery不适用于单独的文件夹中的页面。

所以,在asp.net中,我应该像这样描述脚本:

<script type="text/javascript" src='<%= ResolveUrl("~/Js/file.js") %>'></script>