Avatar billede nythjem Nybegynder
19. juni 2005 - 18:35 Der er 10 kommentarer og
1 løsning

OnKeyPress funktion?

Hej Alle!

Jeg har et textarea, hvor jeg gerne vil have lavet en funktion omkring.

Når textarea´et bliver dannet bliver der inde i det dannet et div, så der kan skrives i det, ala wysiwyg..

På grund af, at der bliver dannet det div kan jeg ikke tilknytte nogle onKeyPress variabler omkring textarea´et men skal derimod gøre det på diven.


Jeg kunne godt tænke mig en funktion der gør noget lignende understående:

- OnKeyPress på document.getElementById("html"), så:
needToConfirm = true;


Hvem kan klare den udfordring? :)


### FUNGERENDE KODE (Hvis uden brug af div) ###

<html>

<head>

<script language="JavaScript">

  var needToConfirm = false;
 
  window.onbeforeunload = confirmExit;
  function confirmExit()
  {
    if (needToConfirm)
      return "Du har forsøgt at forlade denne side. Hvis du har lavet nogle ændringer uden at klikke på Gem knappen vil dine ændringer gå tabt. Er du sikker på du vil forlade denne side?";
  }
</script>

</head>

<body>

<textarea name="html" id="html" cols="88" rows="20" OnKeyPress="needToConfirm = true;"></textarea>

<br><br>

<a href="http://www.link.dk/">Link væk</a>

</body>

</html>
Avatar billede roenving Novice
19. juni 2005 - 19:57 #1
En div inde i et textarea ?-)

-- mener du ikke en contenteditable div ?o]
Avatar billede nythjem Nybegynder
19. juni 2005 - 22:14 #2
:) Jo det gør jeg jo nok Jes..

Tænkte noget

document.getElementById("html").onKeyPress = noget();

function noget() {
needToConfirm = true;
}

kunne gøre det, men det virker selvfølgelig ikke..

Kan du smedje noget godt kode sammen til at løse det? :)
Avatar billede olebole Juniormester
19. juni 2005 - 23:20 #3
<ole>

Hvorfor virker det 'selvfølgelig' ikke?  :)

/mvh
</bole>
Avatar billede nythjem Nybegynder
19. juni 2005 - 23:29 #4
Hej Ole..

Jeg får en document er null? Af en eller anden besynderlig grund.. Men det kan jo være jeg har lavet en fejl, sker jo tit *Gg*

<script language="JavaScript">

document.getElementById("html").onKeyPress = noget();

function noget() {
var needToConfirm = true;
}

  var needToConfirm = false;
 
  window.onbeforeunload = confirmExit;
  function confirmExit()
  {
    if (needToConfirm)
      return "Du har forsøgt at forlade denne side. Hvis du har lavet nogle ændringer uden at klikke på Gem knappen vil dine ændringer gå tabt. Er du sikker på du vil forlade denne side?";
  }
</script>

Husk forresten lige når jeg har dig i den anden ende, at ligge et svar her :) Mon merci..
http://www.eksperten.dk/spm/621848
Avatar billede roenving Novice
20. juni 2005 - 00:52 #5
Du skal nok bruge:

window.onload = function(){
  document.getElementById("htmlDiv").onkeypress = noget;
}

-- bemærk fraværet af paranteser i noget !-)
Avatar billede per1291 Nybegynder
20. juni 2005 - 13:00 #6
Du har en "var-erklæring" for meget:

function noget() {
var needToConfirm = true;
}

Burde være:

function noget() {
needToConfirm = true;
}

Hilsen  Per
Avatar billede nythjem Nybegynder
21. juni 2005 - 11:23 #7
Function Per-Jes-Ole() {
var NeedToAnswer = true;

alert('Tusinde tak for hjælpen :)');
}
Avatar billede roenving Novice
21. juni 2005 - 11:28 #8
Velbekomme '-)
Avatar billede nythjem Nybegynder
21. juni 2005 - 11:29 #9
Og det udemærkede script, der med rette kan bruges til rigtig gode formål blev til:

<html>

<head>

<script language="JavaScript">

window.onload = function(){
  document.getElementById("html").onkeypress = noget;
}

function noget() {
needToConfirm = true;
}

  var needToConfirm = false;
 
  window.onbeforeunload = confirmExit;
  function confirmExit()
  {
    if (needToConfirm)
      return "Du har forsøgt at forlade denne side. Hvis du har lavet nogle ændringer uden at klikke på Gem knappen vil dine ændringer gå tabt. Er du sikker på du vil forlade denne side?";
  }
</script>

</head>

<body>

<textarea name="html" id="html" cols="88" rows="20"></textarea>

<br><br>

<a href="http://www.link.dk/">Link væk</a>

</body>

</html>
Avatar billede roenving Novice
03. august 2005 - 19:29 #10
-- og tak for point ;~}
Avatar billede nythjem Nybegynder
04. august 2005 - 00:39 #11
Velbekomme..

Det sgu dejligt man kan få fat på Jer alle nu, nu hvor email notifikationen virker igen :)
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