2011-05-07 78 views
33

我使用MVC 3与Razor视图引擎,我想从我的意见注入脚本到一个$(document).ready(function( ){});功能在母版页中。Razor RenderSection脚本标记 - 如何从视图插入脚本到模板函数

我曾尝试:

<script type="text/javascript"> 
    $(document).ready(function() { 
     //OnLoad Script load area 
     '@RenderSection("DocumentReady", false)' 
    }); 
</script> 

在我的主人,然后:

@section DocumentReady{ 
    alert(''); 
} 

在我看来,不过unsuprisingly这不工作:(

有一个简单的如何将js代码添加到主函数?我可能会错过一些非常简单的东西。我的观点是我有很多使用$(document).ready(()函数的小视图控件,我不希望客户端页面散布着这些和他们随附的脚本标签。

谢谢。

+0

请解释什么是“行不通“的意思。你得到了什么结果?你期望什么? – MEMark 2013-10-09 20:55:14

+1

@MEMark,问题在于将“裸”(不在''

8

例如,在你的_layout.cshtml:

@RenderSection("JavaScript", required: false) 

然后在您的视图:

@section JavaScript 
    { 
     <script type="text/javascript" src="@Url.Content("/Scripts/SomeScript.js")"></script> 
     <script type="text/javascript" src="@Url.Content("/Scripts/AnotherScript.js")"></script> 

     <script type="text/javascript">console.log("in the js");</script> 
    } 

希望帮助