2012-04-01 9 views
0

Ich habe eine HTML-Datei auf meinem Server und eine Javascript-Datei auf dem gleichen Server. Ich möchte es so, dass, wenn ich die HTML-Datei laden, wird es die Referenz der .js-Datei auf dem Server platziert..js Datei als Quelle in HTML-Datei vom Server hinzufügen

habe ich versucht, auf diese Weise:

<html> 
    <head> 
     <script type="text/javascript src="...server side path...."></script> 
    </head> 
</html> 

aber es funktioniert nicht. Kann mir jemand sagen, wie ich das machen kann ?! Ich befestigte den Code

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:form="http://www.w3.org/2002/xforms" xml:lang="en"> 
<head> 
<script type="text/javascript" src="~/FormFaces/formfaces.js"></script> 
<form:model> 
<form:instance> 
    <data xmlns=""> 
<textbox1></textbox1> 
<textbox2></textbox2> 
<textbox3></textbox3> 
    </data> 
</form:instance> 
</form:model> 
</head> 


<body> 
<table><tr><td><form:input ref="textbox1"> 
<form:label>TextBox1</form:label> 
</form:input> 
</td><td><form:input ref="textbox2"> 
<form:label>TextBox2</form:label> 
</form:input> 
</td></tr><tr><td><form:input ref="textbox3"> 
<form:label>TextBox3</form:label> 
</form:input> 
</td><td></td></tr> 
</table></body> 
</html> 

`Ich möchte die Formfaces.js-Datei in meine Text.html-Datei enthalten sein. Aber wenn ich die Datei text.html über meinen lokalen Server in einem Browser ausführe, wird die Datei formfaces.js nicht geladen. WENN ich diese Datei manuell ausführen, funktioniert alles einwandfrei

+0

Ist es vielleicht einfach nicht funktioniert, weil Sie nicht die Anführungszeichen geschlossen haben um "Text/JavaScript"? – JKing

+0

Ziehen Sie einfach Ihre 'js' Datei aus' solution explorer' in 'head tag', Asp.net wird den korrekten Pfad selbst einstellen. –

Antwort

1

Javascript-Dateien werden auf dem -Client gelesen und ausgeführt.

Sie müssen einen clientseitigen Pfad verwenden; Der Browser sendet eine HTTP-Anfrage an diese URL.

+0

Ich habe den obigen Beitrag bearbeitet, um besser zu verstehen.Bitte antworten Sie – zeeshan

0

verwendet

var sc=document.createElement('script'); 
sc.src="script.js"; 
document.getElementsByTagName('head')[0].appendChild(sc); 

einige Zeit eine Ressourcen wie js, css von Cross-Domain-Browser-Sicherheit verwenden, dies nicht zu benutzen.

, wenn das Problem nicht gelöst, als ich bin nicht sicher, aber Sie können

<script> 
    window.domain = "YOUR_DOMAIN.COM"; 
</script> 
2

helfen denke, ich könnte das Problem sein, dass Sie nicht wissen, wie Sie den Pfad zu der JavaScript-Datei zu machen.

Wenn das der Fall ist, versucht die einfachste zuerst beiden Dateien zu setzen (HTML & js-Datei) im selben Verzeichnis und verwenden Sie nur die Dateinamen ohne Pfad:

<script type="text/javascript" src="somefile.js"></script> 

, die immer funktionieren sollen. Und wenn Sie eine Datei an anderer Stelle versuchen möchten, sollten Sie relative Pfade verwenden. Stellen Sie sich vor, Ihre Dateien werden auf diese Weise auf der Festplatte gelegt:

c: 
    folder1 
    subfolder1 
     file.html 
    subfolder2 
     somescript.js 
    someother.js 

Dann werden die Verweise auf die js Dateien aus dem html wird die folgende:

<script type="text/javascript" src="../subfolder2/somescript.js"></script> 
<script type="text/javascript" src="../../someother.js"></script> 

EDIT:

Ihr Pfad auf der Client-Seite kann das ~ Symbol nicht enthalten. Dieses Symbol sollte von der Serverseite analysiert werden (d. H. Innerhalb von <% %> Tags).

Entweder einen sicheren relativen Pfad verwenden, wie ich oben beschrieben, oder Server-Side-Code verwenden, um den Weg zu machen (siehe diese andere Frage: https://stackoverflow.com/a/697674/146513)

+0

Ich bearbeitet den obigen Beitrag, um ein besseres Verständnis zu bekommen ... Ich denke, es ist nicht das Problem des Pfades. Problem ist woanders und ich bin nicht in der Lage, es zu finden. Bitte antworten Sie – zeeshan

+0

@zeeshan Ich aktualisierte meine Antwort –

Verwandte Themen