2016-12-30 11 views
0

Ich bin Anfänger in DotnetNuke. Ich erstelle ein Projekt, das ein Modul bereitstellt, das in DotnetNuke basierte Website hinzugefügt werden kann.Wie und wo JQuery im Modul-Projekt in DotnetNuke (DNN) hinzufügen?

Ich habe www.dnndev.me in meinem IIS-Server konfiguriert und Projekt in DesktopModule-Ordner davon erstellt. Ich kann mein Modul erfolgreich erstellen, erstellen und zu www.dnndev.me hinzufügen, aber ich weiß nicht, wo ich JQuery im Projektmappen-Explorer meines Modulprojekts hinzufügen soll.

1- Wo sollte ich meine JS- und CSS-Dateien hinzufügen? Ich habe versucht, indem ich einen Ordner "Assets", "Assets/CSS", "Assets/JS" hinzufügen und meine Dateien dort in meinen Solution Explorer legen.

2- Wie man JS/CSS-Dateien in ascx Seite einbinden? Ich habe von

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="View.ascx.cs" Inherits="CustomerDemo.Modules.CustomerDemo.View" %> 
<dnn:DnnCssInclude runat="server" FilePath="~/DesktopModules/CustomerDemo/Assets/JS/fullcalendar.min.js" /> 
<dnn:DnnCssInclude runat="server" FilePath="~/DesktopModules/CustomerDemo/Assets/JS/jquery-ui-timepicker-addon.js" /> 
folgenden müde

von oben Art und Weise .js zeigt in meiner Quelle der Webseite, aber es nicht nennen. Aber wenn ich durch folgende Art und Weise versuchen, es funktioniert

<script type="text/javascript"> 
    $(document).ready(function() { $.getScript("http://www.dnndev.me/DesktopModules/CustomerDemo/Assets/JS//jquery-ui-timepicker-addon.js?_=1483026285109", function() { 
      if ($('.mmdd').length > 0) { 
       $(".mmdd ").datetimepicker(); 
      } 
     }); 
    }); 
</script> 

Kann jemand mir bitte vorschlagen, wie und wo zu platzieren .js und‘.css' Dateien und wie sie in einem Projekt enthalten?

ich verwende: Visual Studio 2015 & DotNetNuke 8 Commnunity

Dateipfad Verwirrung:

Dies ist mein physischer Standort des Ordners, wenn ich durch Rechtsklick öffnen -> Öffnen mit Ordner explorer

F: \ Websites \ dnndev.me \ DesktopModules \ CustomerDemo \ CustomerDemo \ Assets

Aber wenn ich CSS oder JS Datei von Datei-Explorer auf ascx Design Seite ziehen, es diesen Ort nutzen: „~ \ DesktopModules \ CustomerDemo \ Assets \ file.css“

Sie sehen können, dass der physische Pfad hat zwei Ordner CustomerDemo und die Datei wurde aus dem Lösungsexplorer mit Pfad mit nur einem CustomerDemo-Ordner gezogen.

Ich verstehe diesen Mechanismus nicht. Welchen sollte ich benutzen? Kann mir jemand das klar machen?

Ich habe diesen Weg als eine der Vorschlag versucht, aber es sieht aus wie ich etwas für die Registrierung von Skripten anstelle des DnnCssInclude enter image description here

Antwort

0

Verwenden DnnJsInclude Steuerung des Client-Resource Management am fehlt.

In Ihrem .ascx:

<%@ Register TagPrefix="dnn" Namespace="DotNetNuke.Web.Client.ClientResourceManagement" Assembly="DotNetNuke.Web.Client" %> 

<dnn:DnnJsInclude runat="server" FilePath="~/DesktopModules/CustomerDemo/Assets/JS/fullcalendar.min.js" /> 

oder in Ihrem Code hinter, können Sie stattdessen die ClientResourceManager API verwenden:

protected void Page_PreRender(object sender, EventArgs e) 
{ 
    ClientResourceManager.RegisterScript(this.Page, base.ControlPath + "/Assets/JS/fullcalendar.min.js", 100); 
    ClientResourceManager.RegisterScript(this.Page, base.ControlPath + "/Assets/JS/jquery-ui-timepicker-addon.js", 100); 
    ClientResourceManager.RegisterStyleSheet(this.Page, base.ControlPath + "/Assets/CSS/module.css", 100); 
} 
+0

Hallo, Danke. Ich habe einen anderen Dateipfad Verwirrung in diesem Kontext. Ich habe in meiner Frage weitere Informationen hinzugefügt. Es geht um den Speicherort von CSS und JS. Das kann einer der Gründe sein, Dateien nicht hinzuzufügen. Kannst du mich bitte dafür führen? –

+0

Können Sie mich bitte führen?Ich bin verdammt fest, wie keiner meiner JS funktioniert wie erwartet. –

+0

Nanji, benutze den base.ControlPath, um den relativen Pfad zum ascx wie im obigen Beispiel zu erhalten. Wenn die Einstellungen für die Client-Ressourcenverwaltung in Host> Host-Einstellungen deaktiviert sind, sollten Sie in der Lage sein, die Seite zu überprüfen und zu prüfen, ob Ihr Skript den richtigen Pfad enthält. – DotNetNuclear

Verwandte Themen