web-dev-qa-db-ja.com

Asp.NetページにJavascriptファイルを含める方法

ASP.NETページでjavascriptを使用してクライアント側の検証を行いたいです。

使ってみた

<script src="../../../JS/Registration.js" language="javascript" type="text/javascript" />

しかし、機能していません。助けてください。

21
Vaibhav Jain

おそらくファイルは指定されたパスにありません。 「../../../」は、ページが配置されているディレクトリに3ステップ移動し、JSという名前のフォルダでjsファイルを探します。

また、language属性は非推奨です。

スクリプト を参照してください:

18.2.1 SCRIPT要素

language =cdata[ [〜#〜] ci [〜#〜] ]

非推奨この属性は、この要素のコンテンツのスクリプト言語を指定します。その値は言語の識別子ですが、これらの識別子は標準ではないため、この属性は 非推奨 になり、タイプが優先されます。

Edit

変更してみてください

<script src="../../../JS/Registration.js" language="javascript" type="text/javascript" /> 

<script src="../../../JS/Registration.js" language="javascript" type="text/javascript"></script>
15
rahul

ページが深くパスされているか、移動する可能性があり、JSスクリプトがWebフォルダーの「〜/ JS/Registration.js」にある場合は、次のことを試すことができます。

<script src='<%=ResolveClientUrl("~/JS/Registration.js") %>' 
type="text/javascript"></script>
43
o.k.w

のように追加

<head runat="server">
<script src="Registration.js" type="text/javascript"></script>
</head>

または、コードビハインドを追加できます。

Page.ClientScript.RegisterClientScriptInclude("Registration", ResolveUrl("~/js/Registration.js"));
21
Muhammad Akhtar

MasterPageを使用していると想定しているため、マスターページ内で

<head runat="server">
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
</head>

そしてそれに基づいてあなたのページのいずれかにMasterPageこれを追加

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    <script src="js/yourscript.js" type="text/javascript"></script>
</asp:Content>
4
Developer

ScriptManagerコントロールは、javascriptファイルの参照にも使用できます。 1つの問題は、ScriptManagerコントロールをformタグ内に配置する必要があることです。私自身はScriptManagerコントロールを好み、通常はformタグのすぐ上に配置します。

<asp:ScriptManager ID="sm" runat="server">
    <Scripts>
        <asp:ScriptReference Path="~/Scripts/yourscript.min.js" />
    </Scripts>
</asp:ScriptManager>
3
th1rdey3

Fiddler を使用して、何が起こっているのかを確認します。次に、それに応じてパスを変更します。おそらく404エラーが発生し、パスが間違っていることがわかります。

0
RichardOD