Avatar billede ripley Nybegynder
14. december 2000 - 15:16 Der er 7 kommentarer og
1 løsning

<IMG src ..kan jeg bruge det som en string

Jeg har en funktion, der overfører et <IMG>´s source fra en HTML-side og returnerer en værdi, alt efter, hvad denne src indeholdt.
Hvorfor kan følgende ikke lade sig gøre??:
Kan man virkelig ikke bruge funktionen indexOf direkte på source - eller skal den skrives om til en streng på én eller anden måde?
Jeg har prøvet med document.write - og sourcen skrives rigtigt ud til skærmen, så det skulle være rigtigt nok - funktionen har fat i sourcen.

var pos = source.IndexOf(\"1\");


Avatar billede erikjacobsen Ekspert
14. december 2000 - 15:23 #1
Jeg forstår ikke hvad du mener ikke virker. Dette gør vistnok:

function ripley() {
  alert(document.img2.src);
  if (document.img2.src.indexOf(\"e\")>1) {
    alert(\"Der er et e\");
  } else {
    alert(\"Der er ikke et e\");
  }
}

og senere

<img name=\"img2\" src=\"ripley.jpg\">
<form>
<input type=\"button\" value=\"kkk\" onclick=\"ripley();\">
</form>
Avatar billede erikjacobsen Ekspert
14. december 2000 - 15:24 #2
Måske ... fordi du staver indexOf med stort I ??
Avatar billede ripley Nybegynder
14. december 2000 - 15:28 #3
Okay - jeg poster hele funktionen, så kan du måske forstå det bedre:

Først HTML´en:

    <A href=\"#\" onClick=\"transferValue(document.letter.src);\">
    <IMG name=\"letter\" SRC=\"alfabet/1.gif\" WIDTH=13 HEIGHT=11 border=\"0\">


..og så funktionen:

function transferValue()
{
    var pos = (document.letter.src).IndexOf(\"1\");
    if (pos != -1)
    {
        document.emneordForm.emneord.value = \'A\';
    }
}
Avatar billede ripley Nybegynder
14. december 2000 - 15:32 #4
Tja...det er selvfølgelig væsentligt at stave indexOf rigtigt. Men det virker stadig ikke!
Avatar billede ripley Nybegynder
14. december 2000 - 15:34 #5
Jeg manglede bare at sige if (pos==1) i stedet for - nu virker det!

Hurra - og tak :-)
Avatar billede erikjacobsen Ekspert
14. december 2000 - 15:36 #6
Ok
Avatar billede ripley Nybegynder
14. december 2000 - 15:43 #7
Hov - før du smutter,erikjacobsen - kan man følgende (jeg tænker på, om \"i\" automatisk bliver lavet om til string):

function transferValue(source)
{
var i = 1;
    for (i=1;i<=29;i++)
    {
    var pos = source.indexOf(i);
    if (pos != -1)
    {
        document.emneordForm.emneord.value = \'A\';
    }
    }
}
Avatar billede erikjacobsen Ekspert
14. december 2000 - 15:48 #8
Ja, hvis du vil lede efter \"1\" ... \"10\" .... \"29\"  i filnavnet, så kan du gøre sådan!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester