Je veux faire une validation côté client en utilisant javascript dans la page ASP.NET.
J'ai essayé d'utiliser
<script src="../../../JS/Registration.js" language="javascript" type="text/javascript" />
mais ça ne marche pas. Veuillez aider.
Le fichier n'est probablement pas dans le chemin spécifié. '../../../' se déplacera de 3 étapes vers le répertoire dans lequel se trouve la page et recherchera le fichier js dans un dossier nommé JS.
L'attribut language est également obsolète.
Voir Scripts :
18.2.1 L'élément SCRIPT
language
= cdata [ [~ # ~] ci [~ # ~] ]obsolète. Cet attribut spécifie le langage de script du contenu de cet élément. Sa valeur est un identifiant pour la langue, mais comme ces identifiants ne sont pas standard, cet attribut a été déconseillé en faveur du type.
Modifier
Essayez de changer
<script src="../../../JS/Registration.js" language="javascript" type="text/javascript" />
à
<script src="../../../JS/Registration.js" language="javascript" type="text/javascript"></script>
Si votre page est profondément parcourue ou peut se déplacer et que votre script JS se trouve dans "~/JS/Registration.js" de votre dossier Web, vous pouvez essayer ce qui suit:
<script src='<%=ResolveClientUrl("~/JS/Registration.js") %>'
type="text/javascript"></script>
ajouter comme
<head runat="server">
<script src="Registration.js" type="text/javascript"></script>
</head>
OU peut ajouter du code derrière.
Page.ClientScript.RegisterClientScriptInclude("Registration", ResolveUrl("~/js/Registration.js"));
Je suppose que vous utilisez MasterPage donc dans votre page maître, vous devriez avoir
<head runat="server">
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</head>
Et dans l'une de vos pages en fonction de cela MasterPage ajoutez ceci
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
<script src="js/yourscript.js" type="text/javascript"></script>
</asp:Content>
ScriptManager
le contrôle peut également être utilisé pour référencer des fichiers javascript. Un inconvénient est que le contrôle ScriptManager
doit être placé à l'intérieur de la balise form
. Je préfère moi-même le contrôle ScriptManager
et le place généralement juste au-dessus de la balise de fermeture form
.
<asp:ScriptManager ID="sm" runat="server">
<Scripts>
<asp:ScriptReference Path="~/Scripts/yourscript.min.js" />
</Scripts>
</asp:ScriptManager>
Utilisez Fiddler pour voir ce qui se passe. Modifiez ensuite le chemin en conséquence. Vous constaterez probablement que vous obtenez une erreur 404 et que le chemin est incorrect.