2017-05-01 2 views
0

Ich habe .js Datei in meinem ASP.NET Projekt gezogen und fallen gelassen und es reagiert immer noch nicht, während der Code in Inline-Js funktioniert. Ich verwende VS 2017.Externe js-Datei funktioniert nicht

hier ist mein Code;

<script src="externaljavascript.js"></script> 

mein Eingangstaste ist;

<input id="Button1" type="button" onclick="isEven()" value="button" /> 

und mein JavaScript-Code ist;

function isEven() { 
    var num = document.getElementById('<%=TextBox1.ClientID %>').value; 
    if (num % 2 == 0) { 
    alert(num + " " + "is even"); 
    } else { 
    alert(num + " " + "is odd"); 
    } 
} 
+0

wie haben Sie Ihre js importieren? –

+0

Bitte berücksichtigen Sie, wie Sie Ihre JavaScript-Datei importieren und in Ihrem Layout oder einer anderen .cshtml-Datei adressieren. Haben Sie einen Fehler im Konsolenfenster Ihres Browsers? (Verwenden Sie die Taste F12 und überprüfen Sie die Registerkarte Konsole). Wenn Ihre Datei nicht korrekt importiert wurde, sehen Sie den proportionalen Fehler, wie isEven ist keine Funktion und so weiter. – Elnaz

+0

Wenn Sie keinen Fehler in der Konsole hatten, überprüfen Sie, ob die isEven-Funktion funktioniert. Ich meine, im Konsolenfenster, öffne die Quellen-Registerkarte (chrome), lege eine Kugel neben die Zeile: var num = document ...... (indem du neben die Zeile klickst) und aktualisiere dann die Seite (F5). Der Haltepunkt wird aktiviert, drücken Sie F10 und prüfen Sie dann den Wert 'num' (Maus über die Variable bewegen). Der Wert ist wahrscheinlich nicht so wie erwartet, da ('<% = TextBox1.ClientID%>') serverseitig gerendert wurde. – Elnaz

Antwort

0

Als Ihr Javascript enthält (‚<%=TextBox1.ClientID %>‘) Server-Seite Code, bevor er auf Client-Seite übertragen werden müssen, damit es nicht in JS-Datei getrennt werden kann (das heißt externaljavascript.js).

(‚<%=TextBox1.ClientID %>‘) dieses Stück kann innerhalb ASPX-Seite machen

+0

Sir, ich habe es versucht haben, seine nicht funktioniert either.Incase falsch von mir zu sein, freundlich leite mich through.Thankyou

+0

<% = TextBox1.ClientID%> Sie können dies nicht in der JS-Datei schreiben. – mastermind

Verwandte Themen