Avatar billede hjemmeskoen Nybegynder
30. august 2005 - 18:15 Der er 18 kommentarer og
1 løsning

Tegn Tælling

Hejsa..

Jeg skal have lavet sådan at den tæller bogstaver/tegn op. Altså så der eks. er en form boks også står der antallet af bogstaver/tegn nedenunder som automatisk tæller op når man skriver et nyt tegn altså hvis nu der er 2 tegn og man skriver et så skriver den 3. Den skal tælle alt med også Mellemrum. Der behøves nødvendigvis ikke stå:

Der er 500 Mellemrum
Der er 300 Kommaer
Der er 200 Punktummer
Osv..

Men bare:

Der er 1000 Tegn.

Også sidste ting er at der skulle være en betingelse. Altså at der eks. SKAL være 3000 tegn også at den alarmerer hvis der er mindre.

Nogle der vil hjælpe? :)
Avatar billede olebole Juniormester
30. august 2005 - 18:20 #1
<ole>

Jamen, jeg er slet ikke sikker på, en hamster kan tælle  :)

</mvh
</bole>
Avatar billede olebole Juniormester
30. august 2005 - 18:21 #2
- men hvis det er en browser, du skal have lært at tælle, kan det gøres sådan:

<textarea onkeyup="document.getElementById('gnu').innerHTML=this.value.length"></textarea>
<div id="gnu">0</div>

;o)
Avatar billede olebole Juniormester
30. august 2005 - 18:23 #3
- og jeg tror, du skal tænke lidt over alarmen. Den skal vel ikke udløses 3000 gange - så mon ikke den skal laves anderledes?  :)
Avatar billede hjemmeskoen Nybegynder
30. august 2005 - 18:42 #4
<textarea onkeyup="document.getElementById('gnu').innerHTML=this.value.length"></textarea>
<div id="gnu">0</div>

Den virker som den skal.
Først og fremmest tak for det.

Ang. alarmen det er korrekt den kun skal komme en gang..
Avatar billede hjemmeskoen Nybegynder
30. august 2005 - 18:50 #5
Har du en idé til hvordan man kunne lave en alarm?
Avatar billede apo Praktikant
30. august 2005 - 19:00 #6
ole > Hvis man indtaster f.eks. 150 tegn med din metode, kopierer alle tegn og derefter paster, vil man først nå op over 300, når man indtaster endnu et tegn. Derved kan det jo omgås, når blot man paster teksten ind i textarea'et (Og faktisk indtaste flere tegn end tilladt).

Kan det laves således, at den også tæller ved paste af tegn i textarea'et?
Avatar billede hjemmeskoen Nybegynder
30. august 2005 - 19:15 #7
Hovsa nu får jeg lidt problemer kan jeg se.
Den skal ha´et navn for at jeg kunne tilføje teksten til databasen men det kan man ikke gi´den? Ellers ved jeg bare ikke hvordan.

Jeg har forsøgt med:

<textarea onkeyup="document.getElementById('Logbog').innerHTML=this.value.length" rows='9' cols='30' name='Logbog'></textarea>
<b><div id="Logbog">0</div></b>

Og med:

<textarea onkeyup="document.getElementById('Logbog').innerHTML=this.value.length" rows='9' cols='30' textarea name='Logbog'></textarea>
<b><div id="Logbog">0</div></b>

Begge forgæves.

Også skal jeg hører om du har et forslag på hvordan jeg kan stille det op sådan:

<-- TEXTAREA BOKSEN HER --><br>
Der er ialt skrevet <b><- TALLET HER -></b>.

Hvis man taster det ind sådan så kommer det til at se sådan ud:

<-- TEXTAREA BOKSEN HER -->
Der er ialt skrevet
<b><- Tallet her ->/<b>

Altså det kommmer ikke til at stå på samme linie. Ved ikke om det er muligt?
Også skal jeg lige hører om du har et forslag til alarmen.
Avatar billede apo Praktikant
30. august 2005 - 19:26 #8
Det her virker hos mig:

<textarea name="logbog" onkeyup="document.getElementById('logbog').innerHTML=this.value.length" rows="9" cols="30" ></textarea>
<div style="float:left;"><div style="float:left;">Tegn i alt:</div><div id="logbog" style="margin-top:4px; margin-left:5px; font-weight:bold;">0</div></div>

I øvrigt bør du ikke skrive således: name='logbog' men således: name="logbog".
Avatar billede apo Praktikant
30. august 2005 - 19:29 #9
Fejl, ret det til dette:

<textarea name="logbog" onkeyup="document.getElementById('logbog').innerHTML=this.value.length" rows="9" cols="30" ></textarea>
<div style="float:left;"><div style="float:left;">Tegn i alt:</div><div id="logbog" style="margin-left:5px; font-weight:bold;">0</div></div>
Avatar billede olebole Juniormester
30. august 2005 - 19:38 #10
<script type="text/JavaScript">
function myCount(elm) {
    var myMax = 300, displ = document.getElementById('gnu');
    displ.innerHTML = elm.value.length;
    displ.style.color = (elm.value.length>=myMax)? "red" : "";
    if (elm.value.length>myMax) {
        alert("Hovhov, du ...!");
        elm.value = elm.value.substr(0, myMax);
        displ.innerHTML = myMax;
        return false;
    }
}
</script>
<textarea onkeyup="myCount(this)" onchange="myCount(this)"></textarea>
<br>
Der er ialt skrevet: <b id="gnu">0</b> tegn.
Avatar billede olebole Juniormester
30. august 2005 - 19:41 #11
- så får du også lige en rød markering på tallet, når det kommer på eller over max-værdien ... og får teksten barberet ned til max-antal tegn.

Skal du bruge ændringer, skal det være meget hurtigt, da jeg er på vej ud af døren  :)
Avatar billede apo Praktikant
30. august 2005 - 19:59 #12
Fiks detalje:

Der er ialt skrevet: <b id="gnu">0</b> tegn.

Det havde jeg ikke lige tænkt over at man kunne :-)
Avatar billede olebole Juniormester
30. august 2005 - 20:01 #13
hehe - et element er et element ... også mens man ikke tænker på det  ;o)

Anyway ... evt. mere hjælp herfra blive først sent. Ha' en god aften på E  :)
Avatar billede hjemmeskoen Nybegynder
30. august 2005 - 20:03 #14
Ja okay ;)
Olebole din virkede apo din gjorde ikke.

Det eneste der er ved din Olebole er at den stadig ikke har noget navn og derfor så skriver den ikke indholdet til databasen.
Avatar billede hjemmeskoen Nybegynder
30. august 2005 - 20:10 #15
Okay det fandt jeg selv ud af.
Det fedt den alarmerer ved 300 beskeder men kan den ikke alarmerer hvis nu der er mindre end et bestemt antal beskeder. Det genere jo ikke nogle der eksempel er en artikel på 1000 tegn men det genere nok nogle hvis der kun er en på 20 :)

Så altså hvis nu man kunne få gjort sådan at den poppede op hvis nu der var under 100 og at der ved siden af den der tæller op var en slags "countdown" altså så der måske stod:

Der skal være 3 bogstaver og du har skrevet 1 så du mangler 2
Så skriver man:
Der skal være 3 bogstaver og du har skrevet 2 så du mangler 1

Men så skal browseren jo selv til at "regne" ved ikke om det bliver for kompliceret?
Avatar billede apo Praktikant
30. august 2005 - 20:28 #16
hjemmeskoen > Hvad virkede ikke?

ole > Min aften på E bliver kort, jeg er selv på vej ud af døren og er først tilbage i morgen eftermiddag :-)

Har du forresten modtaget mine mails?
Avatar billede hjemmeskoen Nybegynder
30. august 2005 - 21:00 #17
<textarea name="logbog" onkeyup="document.getElementById('logbog').innerHTML=this.value.length" rows="9" cols="30" ></textarea>
<div style="float:left;"><div style="float:left;">Tegn i alt:</div><div id="logbog" style="margin-left:5px; font-weight:bold;">0</div></div>

Det der..
Men som sagt er det lige meget jeg bruger bare Oles.
Avatar billede apo Praktikant
02. september 2005 - 15:32 #18
Det hele er oles ;-)

Det eneste jeg tilføjede var:
<div style="float:left;"><div style="float:left;">Tegn i alt:</div><div id="logbog" style="margin-left:5px; font-weight:bold;">0</div></div>

... og det virker.

Dog er oles: "Der er ialt skrevet: <b id="gnu">0</b> tegn." smartere og mere anvendeligt end min tilføjelse, da man bruger mindre kode (Hvilket altid er at foretrække).

Husk i øvrigt at lukke samt at give ole points :-)
Avatar billede hjemmeskoen Nybegynder
02. september 2005 - 18:46 #19
Jeg lukker og gir´ole Points :)
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