2012-08-30 15 views
7

संभव डुप्लिकेट शामिल करने के लिए करने के लिए:
ASP.Net MVC 3 Razor: Include js file in Head tagकैसे जावास्क्रिप्ट पृष्ठ पर शीर्ष लेख MVC4 में

मैं कुछ लेआउट में जे एस के एक बहुत डाल करने के लिए नहीं करना चाहते हैं और मैं क्या करने की जरूरत यह कुछ विशिष्ट पृष्ठों के लिए मेरा मतलब है कि कुछ जेएस को उनके शीर्षलेख में शामिल करना है।

मैंने ऐसा करने की कोशिश की है लेकिन यह काम नहीं करता है जैसा कि यह होना चाहिए।

@{ 
    Layout = "~/Views/Shared/_LayoutInner.cshtml"; 
    @Scripts.Render("~/Scripts/farbtastic/farbtastic.js") 
    @Styles.Render("~/Scripts/farbtastic/farbtastic.css") 
    @Scripts.Render("~/Scripts/jquery.tinycarousel.min.js") 
    @Scripts.Render("~/Scripts/jquery-ui-1.8.11.min.js") 
} 
<script type="text/javascript" charset="utf-8"> 
    $(document).ready(function() { 
     $('#slider1').tinycarousel(); 
     $("#accordion").accordion(); 
     $('#picker').farbtastic('#color'); 
    }); 
</script> 

मुझे लगता है कि

@{ 
    Layout = "~/Views/Shared/_LayoutInner.cshtml"; 
    <script type="text/javascript" src="@Url.Content("~/Scripts/farbtastic/farbtastic.js")"></script> 
<link href="@Url.Content("~/Scripts/farbtastic/farbtastic.css")" rel="stylesheet" type="text/css" /> 
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery.tinycarousel.min.js")"></script> 
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery-ui-1.8.11.min.js")"></script> 
} 

और सभी में कोई सफलता की तरह की कोशिश की है।

मैं इसे कैसे संग्रहीत कर सकता हूं?

+1

क्या आप एक हेड टैग परिभाषित नहीं कर सकते और जेएस को पृष्ठों में संदर्भित नहीं कर सकते? – ssilas777

+0

@ ssilas777 ओह! यह मेरे द्वारा कैसे हो सकता है? –

+3

इस प्रश्न को जांचें: http://stackoverflow.com/questions/4311783/asp-net-mvc-3-razor-include-js-file-in-head-tag मुझे लगता है कि आपको यही चाहिए। – nemesv

उत्तर

12

मैं में यकीन है कि अपने _LayoutInner.cshtml आप इस

<head> 
<link href="@Url.Content("~/Scripts/farbtastic/farbtastic.css")" rel="stylesheet" type="text/css" /> 
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery-ui-1.8.11.min.js")"></script> 
</head> 

तरह जे एस फ़ाइलें संदर्भित किया जाना चाहिए था इसी तरह अपने लक्ष्य को प्राप्त करने के लिए आप अपने _LayoutInner.cshtml पन्नों में दो नामित वर्गों जोड़ने के लिए इस-

तरह खंड सिर
<head> 
<link href="@Url.Content("~/Scripts/farbtastic/farbtastic.css")" rel="stylesheet" type="text/css" /> 
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery-ui-1.8.11.min.js")"></script> 
@RenderSection("JavaScript", required: false) 
@RenderSection("CSS", required: false) 
</head> 

अब आप अपने अन्य पन्नों में अतिरिक्त जावास्क्रिप्ट या सीएसएस पृष्ठों इन नामित अनुभागों का उपयोग शामिल करने के लिए

@section JavaScript 
{ 
    <script type="text/javascript"src="@Url.Content("~/Scripts/farbtastic/farbtastic.js")"></script> 
    <script type="text/javascript" src="@Url.Content("~/Scripts/jquery.tinycarousel.min.js")"></script> 
} 

@section CSS 
{ 
    <link href="@Url.Content("~/Scripts/farbtastic/farbtastic.css")" rel="stylesheet" type="text/css" /> 
} 

यह आपके ऊपर है कि जावास्क्रिप्ट और सीएसएस के लिए अलग-अलग नामों को शामिल करना है या नहीं।

उम्मीद है कि यह मदद करता है!

+0

बहुत बहुत धन्यवाद !!!! एक आखिरी सवाल: क्या मैं कुछ बाहरी फाइलों में सेक्शन रखता हूं? –

+2

नहीं, आपको उन पृष्ठों में अनुभागों का उपयोग करना होगा जिन्हें आप इन जेएस फाइलों को शामिल करना चाहते हैं .. सामान्य रूप से अनुभागों का उपयोग केवल बाहरी फाइलों के लिए नहीं किया जाता है, यह अंतिम प्रतिक्रिया में इन वर्गों में गतिशील सामग्री को आउटपुट करने के लिए है। इस मामले में आप मुख्य अनुभाग में आपकी अंतिम प्रतिक्रिया में जावास्क्रिप्ट फ़ाइलों और सीएसएस फ़ाइलों को बिल्कुल देख सकते हैं। – ssilas777

संबंधित मुद्दे