Avatar billede caveman99 Nybegynder
07. september 2001 - 19:27 Der er 10 kommentarer og
1 løsning

window.location

Dette burde være simpelt... jeg kan ikke forstå hvorfor det ikke virker.. Det ligner præcist et script jeg fandt under accepteret spørgsmål???

Mit script ser sådan ud

<html>
<head><title></title>
<body>

<script type=\"text/javascript\">
function confirm_delete(f, l) {
  if(confirm(\'Skal filen slettes \'+f)) {;
    alert(\'Ok vi sletter\');
    location.href=\'http://www.google.com\';
  } else {
    alert(\'Ok vi lader \'+f+\' leve\');
  }
}
</script>

<a href=\"\" onclick=\"confirm_delete(\'test.zip\',\'d:/windows\');\">SLET</a>

</body>
</html>


jeg har også prøvet med f.eks.

location=\'test.php\'

eller

location=\'http://localhost/test.php\'

men intet virker?

Ps.
Jeg kører Windows98, med IE 5.5 samt Apache/PHP
Avatar billede roenving Novice
07. september 2001 - 19:30 #1
<html>
<head><title></title>
</head><!--en lille meget væsentlig detalje-->
<body>

<script type=\"text/javascript\">
function confirm_delete(f, l) {
  if(confirm(\'Skal filen slettes \'+f)) {;
    alert(\'Ok vi sletter\');
    location.href=\'http://www.google.com\';
  } else {
    alert(\'Ok vi lader \'+f+\' leve\');
  }
}
</script>

<a href=\"\" onclick=\"confirm_delete(\'test.zip\',\'d:/windows\');\">SLET</a>

</body>
</html>

hth
jes
Avatar billede jakoba Nybegynder
07. september 2001 - 19:31 #2
prøv med

  window.location.href = \'http://www.google.com\';

mvh JakobA
Avatar billede roenving Novice
07. september 2001 - 19:32 #3
Forøvrigt ville jeg flytte javascript-funktionen ind i head-sektionen, bare for overblikkets skyld:

<html>
<head><title></title>

<script type=\"text/javascript\">
function confirm_delete(f, l) {
  if(confirm(\'Skal filen slettes \'+f)) {;
    alert(\'Ok vi sletter\');
    location.href=\'http://www.google.com\';
  } else {
    alert(\'Ok vi lader \'+f+\' leve\');
  }
}
</script>

</head>

<body>


<a href=\"\" onclick=\"confirm_delete(\'test.zip\',\'d:/windows\');\">SLET</a>

</body>
</html>
Avatar billede caveman99 Nybegynder
07. september 2001 - 19:40 #4
Jeg har nu gemt roenving løsning i en fil kaldet test.php i roden af min webserver!

jeg skriver i IE http://localhost/test.php

Den spørger om jeg vil slette test.zip.. Trykker OK.

Alerten kommer frem, og jeg sendes til en \"directory liste\" af roden af webserveren..

Jeg har prøvet at genstarte min apache og IE, men det virker stadigt ikke??
Avatar billede caveman99 Nybegynder
07. september 2001 - 19:42 #5
window.location giver samme resultat
Avatar billede jakoba Nybegynder
07. september 2001 - 19:55 #6
<html>
<head><title></title>
</head>
<body>

<script type=\"text/javascript\">
function confirm_delete(l,f) {
  if(confirm(\'Skal mappen slettes \'+f)) {
    alert(\'Ok vi sletter\');
    l.href = \'http://www.google.com\';
  } else {
    alert(\'Ok vi lader \'+f+\' leve\');
    l.href = \"java script:void(0)\"
  }
}
</script>

<a href=\"java script:void(0)\"
  onclick=\"confirm_delete(this,\'d:/windows\');\">SLET</a>

</body>
</html>

den her virker hos mig:

mvh JakobA
Avatar billede caveman99 Nybegynder
07. september 2001 - 20:02 #7
Den virker også hos mig, men når jeg skifter this ud med test.zip så virker det ikke igen..

hvad gør this??

variablerne l & f skal sendes til et php script!
der skal ikke gøres noget ved dem via JavaScript.

Der skal bare sendes til side A eller B an på alert boksen..

f.eks.
location=\'test.php?location=l&fil=f\';
Avatar billede caveman99 Nybegynder
07. september 2001 - 20:08 #8
min side ser sådan ud nu:

<html>
<head><title></title>
</head>
<body>

<script type=\"text/javascript\">
function confirm_delete(f,l) {
  if(confirm(\'Skal filen \'+f+\' slettes\')) {
    alert(\'Ok vi sletter \'+f);
    l.href = \'test1.php?location=\'+l+\'&fil=\'+f;
  } else {
    alert(\'Ok vi lader \'+f+\' leve\');
    l.href = \"java script:void(0)\"
  }
}
</script>

<a href=\"java script:void(0)\"
  onclick=\"confirm_delete(\'test.zip\',\'d:/windows\');\">SLET</a>

</body>
</html>

nu bliver jeg da i det mindste på samme side (test.php) når jeg trykker ja til at slette test.zip.... men jeg ville nu gerne til delete.php sammen med værdierne af l & f
Avatar billede jakoba Nybegynder
07. september 2001 - 20:20 #9
Jeg skrittede \'test.zip\' fordi den ikke så ud til at blive brugt til noget. hvis den er nødig skal vi have 3 parametre:

<html>
<head><title></title>
</head>
<body>

<script type=\"text/javascript\">
function confirm_delete(l,f,lnk) {
  if(confirm(\'Skal mappen slettes \'+f)) {
    alert(\'Ok vi sletter\');
    lnk.href = \'test1.php?location=\'+l+\'&fil=\'+f;
  } else {
    alert(\'Ok vi lader \'+f+\' leve\');
    lnk.href = \"java script:void(0)\"
  }
}
</script>

<a href=\"java script:void(0)\"
  onclick=\"confirm_delete( \'test.zip\', \'d:/windows\', this );\">SLET</a>

</body>
</html>

mvh JakobA
Avatar billede caveman99 Nybegynder
07. september 2001 - 20:25 #10
Ja nu virker det som det skal!! tak JakobA


Hvad er \'this\'... er det urlen på nuværende side??, og hvorfor skal den bruges og ikke window.location??
Avatar billede jakoba Nybegynder
07. september 2001 - 20:48 #11
i dette tilfælde er  this  det linkobjekt som onclick handleren ligger i.

Så det jeg faktisk gør er at omdefinere link-adressen, når onclik funktionen er færdig hopper linket så derhen.

generelt betyder  this  \"det objekt der ejer denne funktion\".

mvh JakobA
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