Avatar billede lancelot Nybegynder
15. december 2002 - 19:23 Der er 20 kommentarer og
1 løsning

vælg tekst i inputfelt og gør bold

Jeg har to textarea som har hver deres bold knap. Man skal kun kunne trykke på Boldknappen når man har valgt en tekst man vil gøre bold - hvilket gælder for begge textareas. hvis man ikke har valgt noget tekst skal boldknappen være inaktiv. (knapperne er giffer).

Jeg vilkke være utrolig glad hvis der var nogen der ville hjælpe :-)
Avatar billede Slettet bruger
15. december 2002 - 19:44 #1
Du kan ikke gøre et enkelt stykke tekst i et textarea bold. Du skal enten gøre al tekst i textarea'et bold på én gang eller lade være. Evt. kan du overveje en simplere version af dette:
http://phoenixv.h4f.dk/mini_wysiwyg.html
Avatar billede lancelot Nybegynder
15. december 2002 - 20:11 #2
okey - jeg har lavet et cms system - som ikke bygger på wordeditoren. Jeg har fundet et script der sætter <b>tekst</b> tagget rundt om en tekst når jeg highlighter den - problemet er bare at knappen skal blive inaktiv når man ikke længere har vælgt noget tekst... der ud over er der to texrareas som har hver deres bold knap som skal virke uafhængit af hinanden... :-)
Avatar billede lancelot Nybegynder
15. december 2002 - 20:13 #3
Jeg tænkte på at hvis man skal bruge dit eksempel om man så kunne nøjes med - feltet man kan skrive i samt, kursiv, bold og understreget...
Avatar billede Slettet bruger
15. december 2002 - 20:18 #4
Det kan du godt. Du fjerner bare de overflødige links.
Avatar billede pelkjaer Nybegynder
15. december 2002 - 20:18 #5
Her er også et lille eks

<html>
<head>
<script>
function doCmd(button, sCmd, sValue) {
  var oSel = mydiv.document.selection.createRange()
  var sType = mydiv.document.selection.type   
  var oTarget = (sType == "None" ? mydiv.document : oSel) 
   
  oTarget.execCommand(sCmd, false, sValue)

  mydiv.focus()
  return true
}

</script>
</head>
<body>

<div id="mydiv" name="mydiv" contenteditable="true"></div>

<br>

<a href="#" onclick="doCmd(this,'Bold'); return false;">Fed</a>

</body>
</html>
Avatar billede pelkjaer Nybegynder
15. december 2002 - 20:20 #6
Og kursiv og underline også

<a href="#" onclick="doCmd(this,'italic'); return false;">Kursiv</a>
<br>
<a href="#" onclick="doCmd(this,'underline'); return false;">Understreget</a>
Avatar billede lancelot Nybegynder
15. december 2002 - 20:22 #7
hvordan virker nedenstående ?


<html>
<head>
<script>
function doCmd(button, sCmd, sValue) {
  var oSel = mydiv.document.selection.createRange()
  var sType = mydiv.document.selection.type   
  var oTarget = (sType == "None" ? mydiv.document : oSel) 
   
  oTarget.execCommand(sCmd, false, sValue)

  mydiv.focus()
  return true
}

</script>
</head>
<body>

<div id="mydiv" name="mydiv" contenteditable="true"></div>

<br>

<a href="#" onclick="doCmd(this,'Bold'); return false;">Fed</a>

</body>
</html>
Avatar billede Slettet bruger
15. december 2002 - 20:23 #8
Det virker kun i IE5.5+ i hvert fald. Modsat den samme løsning med en iframe, som virker i IE5+.
Avatar billede pelkjaer Nybegynder
15. december 2002 - 20:24 #9
Well, det er ikke de store ændringer der skal til for at bruge en iframe her heller.
Avatar billede pelkjaer Nybegynder
15. december 2002 - 20:25 #10
lancelot>>skriv bare løs fra venstre hjørne, sæt evt. en farve på div'en for at du kan se hvor :)
Avatar billede lancelot Nybegynder
15. december 2002 - 20:27 #11
okey - det med ilayer fungere ret fedt... hvad hvis jeg nu har to ilayers - hva så ?
Avatar billede Slettet bruger
15. december 2002 - 20:28 #12
Det er en iframe, ikke en ilayer. Med to styks bliver det lidt sværere. Jeg vender tilbage i morgen!
Avatar billede lancelot Nybegynder
15. december 2002 - 20:35 #13
hvordan kan det være at det bliver sværere ?
Avatar billede pelkjaer Nybegynder
15. december 2002 - 20:36 #14
Der skal ændres nogle navne - har du en editor med find&replace er det såmænd ikke så svært.
Avatar billede lancelot Nybegynder
15. december 2002 - 20:37 #15
ja det har jeg
Avatar billede lancelot Nybegynder
15. december 2002 - 20:38 #16
er det ikke at sætte nogle varialbler ind på navnene ? - hvis man i princippet skal klunne oprette endelige ?
Avatar billede lancelot Nybegynder
15. december 2002 - 20:38 #17
uendelige mener jeg
Avatar billede Slettet bruger
16. december 2002 - 13:12 #18
Skal du have uendeligt mange eller to?
Avatar billede lancelot Nybegynder
16. december 2002 - 13:24 #19
uendelig mange... - tænkte på om det ikke kunne laves i ASP
Avatar billede Slettet bruger
16. december 2002 - 14:33 #20
Det er jo irrelevant, om det kan laves i ASP, da det kun er outputtet, som kan bruges til noget for os JS'ere.
Du kan gøre således ved hvert besked-felt:

<a href="#" onClick="document.felt1.document.execCommand('Bold', false); return false;">Bold</a> <a href="#" onClick="document.felt1.document.execCommand('Italic', false); return false;">Italic</a> <a href="#" onClick="document.felt1.document.execCommand('Underline', false); return false;">Underline</a><br>
<iframe src="about:blank" frameborder="0" style="border: 1px solid black;" name="felt1"></iframe>
<script>
document.felt1.document.designMode = "On";
</script>

Husk så at gøre 1 til 2 næste gang, derefter til 3 osv.
Avatar billede lancelot Nybegynder
16. december 2002 - 14:38 #21
tak skal du ha' :-)
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