Avatar billede phpbegynder2004 Nybegynder
20. maj 2007 - 20:42 Der er 5 kommentarer og
1 løsning

Script virker ikke ved fuld sti

Hej Eksperter,

Jeg har et javascript, der sætter en tekstsmiley ind i et textarea, når man klikker på en <img> smiley.

Billederne af smileys dukker op i et separat popup-vindue (smileys.html), men når man klikker på dem indsættes tekstsmiley'en kun i mit tekstarea, når der er blevet linket til "smileys.html". Hvis man linker til http://www.site.com/smileys.html, så virker det ikke. Hvorfor?

/******* FORM SITE MED TEXTAREA **********/

  <form onSubmit="submitonce(this)" action="kommentar/skriv.php" method="post" name="format">
    <textarea rows="10" name="besked" cols="60"></textarea>
    <input type="submit" value="Skriv">
  </form>

<a href="java script: void(null);" onClick="window.open('http://www.sags.dk/smileys.html','VisBillede','top=0,left=0,width=200,height=100,maxheight=400,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1');"><img src="http://www.sags.dk/pic/smileys/smiley.gif" title="Indsæt smiley"></a>


/*********** smileys.html *************/

<script type="text/javascript">
function smiley(smiley) {
parent.opener.document.format.besked.value = parent.opener.document.format.besked.value + smiley
}
</script>

<input type="image" src="pic/smileys/biggrin.gif" name="image" onClick="smiley(':D');window.close(self);">&nbsp;
<input type="image" src="pic/smileys/wink.gif" name="image" onClick="smiley(';)');window.close(self);">&nbsp;
...og nogle flere...
Avatar billede erikjacobsen Ekspert
20. maj 2007 - 20:47 #1
Så lader du da bare være med at bruge den fulde sti - så virker det, som du selv skriver?

Eller er det fordi dine smileys ligger på et andet site? Så glem det, Cross-Site-Scripting er slået fra de fleste steder.
Avatar billede w13 Novice
20. maj 2007 - 20:48 #2
Ja, det lyder jo lidt underligt, men jeg tror, at når du skriver http://, så lukker du automatisk forbindelsen mellem siden med formen og siden med smileys.
Altså at den måske går ud fra, det er et andet domæne, når du skriver http. Hvorfor er der behov for, at den fulde sti skal være der?
Avatar billede phpbegynder2004 Nybegynder
20. maj 2007 - 22:05 #3
Fordi jeg inkluderer FORM SITE MED TEXTAREA mange steder på mit site. Og hvis man er i en undermappe vil det ikke længere virke. Derfor er jeg nødt til at skrive den fulde sti.
Avatar billede w13 Novice
20. maj 2007 - 22:07 #4
Du kan sagtens få det til at virke, selvom det er i en undermappe.

Hvis du indleder stien med "/", så starten den ude fra roden.
Så selvom FORM SITE MED TEXTAREA ligger inde i guestbook/code/date/, så vil den alligevel starte ude fra hovedmappen, når blot du indleder adressen med /. =)
Avatar billede phpbegynder2004 Nybegynder
20. maj 2007 - 22:32 #5
Super! :D
Det var jo ikke så avanceret! :)
Avatar billede w13 Novice
20. maj 2007 - 22:38 #6
Mange tak for point! :)
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