webForumDet fria alternativet

Problem med att javascript inte körs rätt vid inkludering av .js-fil

JavaScript

4 svar · 234 visningar · startad av mangan

Medlem sedan feb. 2003216 inlägg
Frågan#1

Hej!
Har problem som jag inte förstår mig på. Som det är nu så har jag samma javascriptkod på flera ställen i mina sidor. Nu tänkte jag samla ihop dom i en js-fil för det är ju bättre liksom. Problem uppstår dock när jag vill inkludera en js-fil och fortfarande använda vissa saker jag skrivit i själva html-filen.
Så här har jag skrivit

<script src="minascript.js>
<!--
function checkForm (form) {
if(!minFunktioniJS(form.email.value){
alert("scriptet funkade!");
return false;
}
// sen kommer det gamla if-satser som har fungerat
return true;
}
//-->
</script>

och i min minascript.js

function minFunktioniJS (email){
return false;
}

Som ni ser så gör inte min funktion så mycket för tillfället för att jag vill först få det att funka. Om jag tar bort inkluderandet av minascript.js så funkar mina gamla grejer igen men jag tycker att man borde kunna köra både funktionerna i js-filen och dom sidspecifika scripten. Är detta inte möjligt?

Medlem sedan mars 20015 287 inlägg
#2
<script language="JavaScript" type="text/javascript" src="minascript.js></script>
<script language="JavaScript" type="text/javascript">
<!--
function checkForm (form) {
if(!minFunktioniJS(form.email.value){
alert("scriptet funkade!");
return false;
}
// sen kommer det gamla if-satser som har fungerat
return true;
}
//-->
</script>
Medlem sedan feb. 2003216 inlägg
#3

funkar inte. Här är hela min kod som det ser ut. script.js har bara checkMail() som returnerar true oavsett input.

<script language="JavaScript" type="text/javascript" src="script.js></script>
<script language="JavaScript" type="text/javascript">
<!--
function checkForm(form){

if(checkMail("mail")){
   alert("funkade");
}

if(!/^.+@.+\..+$/.test(form.email.value)){
alert("Felaktig e-post");
form.email.value = "";
form.password.value = "";
form.email.focus();
return false;
}
if(form.password.value == ""){
   alert("Du måste ange ett lösenord för att kunna logga in");
   form.password.value = "";
   form.password.focus();
   return false;
}
return true;
}
//-->
</script>

Ingen av koden under anropet till checkMail verkar utföras. Fattar inget.
Kanske skall tillägga att koden är placerad inom HEAD-taggarna, spelar det in tro?

Medlem sedan juli 2000534 inlägg
#4

Du har missat en ".

<script language="JavaScript" type="text/javascript" src="script.js[B]"[/B]></script>
Medlem sedan feb. 2003216 inlägg
#5

Så typiskt!!
Jag anade att det var något sånt men som bekant blir man ibland lite kodblind. Tack för hjälpen Solbulle och Morph

258 ms totalt · 4 externa anrop · v20260731065814-full.2f471f9e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)