Avatar billede moso Nybegynder
06. maj 2004 - 15:06 Der er 11 kommentarer og
2 løsninger

Få filnavn fra billede flyttet til form.

Jeg vil have flyttet et filnavn fra et vindue til et andet. Ideen er at man skal indsætte et billedes filnavn i en form ved at klikke på billedet. Billederne vises i et popup vindue, som gerne skal lukkes efter man har klikket på billedet.
Er der mon nogen der har en ide?
Avatar billede pelkjaer Nybegynder
06. maj 2004 - 15:25 #1
Vinduet der åbner en popup med billeder:

<form>
<input type="text" name="img">
</form>

Popup med billeder:

<script type="text/javascript">
function imgName(path) {
  var pathLength = path.split("/").length;
  window.opener.document.forms[0].img.value = (path.split("/")[pathLength-1]);
  window.close();
}
</script>

og et billede

<img src="Win/images_horizontal/menu_1_off.gif" width="100" height="21" onClick="imgName(this.src)">
Avatar billede moso Nybegynder
06. maj 2004 - 16:52 #2
kan man gøre det samme med et billede, så det ikke bliver vist i en form, men vist i en hidden form OG billedet bliver vist istedet?
Avatar billede moso Nybegynder
06. maj 2004 - 16:53 #3
jeg ved godt det er et extra spørgsmål, meeeen det er jo 200 p
Avatar billede pelkjaer Nybegynder
08. maj 2004 - 12:23 #4
At ændre det til en hidden form, er jo blot at ændre type="text" til type="hidden".

Og at vise billedet på opener siden, kunne du gøre ved at placere en transparent gif der per default, og ændre koden i popup'en til:

function imgName(path) {
  var pathLength = path.split("/").length;
  window.opener.document.forms[0].img.value = (path.split("/")[pathLength-1]);
  window.opener.document.images["transparentPic"].src = (path.split("/")[pathLength-1]);
  window.close();
}
Avatar billede moso Nybegynder
08. maj 2004 - 13:24 #5
det med hidden kan jeg godt se - men jeg kan ikke få billedet ti at virke.

Min popup-side ser sådan ud:
<script type="text/javascript">
function imgName(path) {
  var pathLength = path.split("/").length;
  window.opener.document.forms[0].img.value = (path.split("/")[pathLength-1]);
  window.close();
}
</script>
<img src="editor_images/Italics.gif" width="16" height="16" onClick="imgName(this.src)">

(Billedet er bare et test billede)

Side 1:

<form>
<input type="hidden" name="img">
  <img src="/1/transparentPic.gif" width="100" height="100">
</form>


Kan man ikke gøre begge dele samtidigt, så man både får filnavnet i en hidden form OG billedet vist på side 1
Avatar billede roenving Novice
08. maj 2004 - 14:43 #6
Jo, tag pelkjaers sidste og sæt et name på <img>-tagget:

  <img src="/1/transparentPic.gif" name="transparentPic" width="100" height="100">

-- du har forøvrigt et potentielt problem med filsti, for Peters tager kun fil-navnet med, så hvis du har billeder i underbiblioteker (som jeg kan se, du har !-) skal den måske udbygges til:

function imgName(path) {
  path = path.split("/")
  var pathLength = path.length;
  window.opener.document.forms[0].img.value = path[pathLength-1]);
  window.opener.document.images["transparentPic"].src = path[pathLength-2]+"/"+path[pathLength-1]);
  window.close();
}

-- eventuelt skal også den skjulte værdi ændres, men det er nok ikke så nødvendigt, da du jo har styr på den del server-side !o]
Avatar billede moso Nybegynder
08. maj 2004 - 18:11 #7
roenving: Der er en fejl. Jeg kan ikke få det til at virke. Der mangler vist et ; et eller andet sted...
Avatar billede roenving Novice
08. maj 2004 - 18:17 #8
Uff, jeg havde jo ikke fået konsekvens-rettet fuldt:

function imgName(path) {
  path = path.split("/")
  var pathLength = path.length;
  window.opener.document.forms[0].img.value = path[pathLength-1];
  window.opener.document.images["transparentPic"].src = path[pathLength-2]+"/"+path[pathLength-1];
  window.close();
}
Avatar billede moso Nybegynder
08. maj 2004 - 18:22 #9
Så er den der, det endte med denne løsning:
I popup:
<script type="text/javascript">
function imgName(path) {
  path = path.split("/")
  var pathLength = path.length;
  window.opener.document.forms[0].img.value = path[pathLength-1];
  window.opener.document.images["transparentPic"].src = path[pathLength-2]+"/"+path[pathLength-1];
  window.close();
}

</script>

Den anden side:

<form>
<input type="hidden" name="img">
  <img src="/1/transparentPic.gif" name="transparentPic" width="100" height="100">
</form>

Jeg vil gerne dele lidt på points, roenving, kan du ikke smide et svar...
Avatar billede moso Nybegynder
08. maj 2004 - 18:22 #10
Og tak for hjælpen;-)
Avatar billede roenving Novice
08. maj 2004 - 18:25 #11
Velbekomme '-)
Avatar billede moso Nybegynder
08. maj 2004 - 18:36 #12
pelkjaer var dog først med en løsning, men roenving kunne følge den til dørs.
Avatar billede roenving Novice
08. maj 2004 - 18:36 #13
-- 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

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