2008-12-16 51 views
13

我试图让简单的jQuery与下面没有运气我的内容页面上执行ASP.net MVC应用程序是什么,我试图做的:的jQuery在使用母版页

<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server"> 

    <script src="../../Scripts/jquery-1.2.6.js" type="text/javascript"></script> 
    <script type="text/javascript"> 

     $(document).ready(function() { 
      alert("hi"); 
     }); 
    </script> 

</asp:Content> 

我也曾尝试得到以下工作:

<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server"> 

    <script src="../../Scripts/jquery-1.2.6.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
     function onload() 
     { 
      $("#myDiv").css("border", "1px solid green"); 
     } 
    </script> 

    <div id="myDive"> 
     Hello 
    </div> 

</asp:Content> 
+0

你应该把jQuery脚本引用您的母版页HEAD部分,而不是工作在内容页面(我意识到你可能只是把它放在这里作为例子,可能已经知道这一点) – 2009-01-20 04:06:34

回答

35

这可能是因为无法找到JQuery的文件,尝试一下本作的脚本参考:

<script src="<%= Url.Content ("~/Scripts/jquery-1.2.6.js") %>" type="text/javascript"></script> 

无论应用程序是在根目录还是在子目录中运行,Url.Content都会构建正确的路径。

而且,如果你已经安装了烫的JS智能感知,除了可以使用上面:

<% if (false) { %> 
    <!-- Don't wrap this is a Url.Content call, it's like this so we get intellisense! --> 
    <script src="../../Scripts/jquery-1.2.6-vsdoc.js" type="text/javascript"></script> 
<% } %> 

编辑:

由于的释放RC 1 Refresh,有一个关于在代码块中放置代码块的元素的知识,Philip Haacked对于解决它有一个很好的article ...

编辑2:

显然,这已得到修复,因为RC 2发布...

•代码掘金是头元素的直接子不会导致异常,如果添加了RUNAT =“服务器”属性给他们。

编辑3:

的热修复较早引用仅适用于VS2008,并提供here - 检查由有关详细信息,VS的Web开发团队here的博客文章。 VS2010内置了它。

+1

谢谢。这是在使用**区域**的MVC站点中修复主页的好技巧。 – JustinStolle 2010-05-27 16:50:41

0

尝试将JavaScript引用放入主页面。那么您不必担心尝试多次加载脚本。

0

有用来发布网站的权利,但它是一个痛苦,当你有一个设计师,只是知道如何使用Photoshop和Dreamweaver中