Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kako detektovati kada korisnik paste-uje tekst u input polje ili textarea

[es] :: Javascript i AJAX :: Kako detektovati kada korisnik paste-uje tekst u input polje ili textarea

[ Pregleda: 2165 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

m.stojanov
Test Test

Član broj: 126777
Poruke: 231
*.adsl.verat.net.



+3 Profil

icon Kako detektovati kada korisnik paste-uje tekst u input polje ili textarea17.07.2010. u 21:54 - pre 166 meseci
Pozdrav svima. Pokusao sam da napravim brojac karaktera kao na Twitter-u - dakle, na osnovu onKeyUp eventa pozivam f-ju koja radi sav posao. Evo kako to izgleda:

Code:
<html>
    <head>
        <title>Brojac reci</title>
        <script src="script.js" type="text/javascript"></script>
        <style type="text/css">
            h3 { color: gray; }
        </style>
    </head>
    
    <body>
        <form action="#" method="">
        
        <textarea id="myText" rows="4" cols="50"></textarea><br />
        <h3 id="textLengthInfo">0/16 chars used!</h3>
        <input id="submit" type="submit" name="submit" value="Post!" />
        </form>
    </body>
</html>


Code:
window.onload = initAll;

//set maximum number of chars
var maxNumChars = 16;

function initAll() {    
    var textBox = document.getElementById("myText");    
    textBox.onkeyup = countChars;    
}

function countChars() {        
    var textLengthInfo = document.getElementById("textLengthInfo");
    var submitButton = document.getElementById("submit");
    currentNum = this.value.length;
    textLengthInfo.innerHTML = currentNum + "/" + maxNumChars +" chars used!";
    if(currentNum > maxNumChars) {
        textLengthInfo.style.color = "red";
        textLengthInfo.style.fontWeight = "bold";
        submitButton.disabled=true;
    } else {
        textLengthInfo.style.removeProperty("color");
        textLengthInfo.style.removeProperty("fontWeight");
        submitButton.disabled=false;
    }
}


A uzivo mozete videti ovde:

http://pakito.iz.rs/javascript-lastfm-demo/

Sve je okej, osim te jedne stvari - kako da prebrojim karaktere kada korisnik pastuje neki tekst? Koji bi to event bio? Trazio sam po netu, i procitao sam na forumima da tako nesto ne postoji. Sa druge strane, znam da moze, jer na Twitteru to radi. Na last.fm-u ne.

Pokusao sam sa onChange eventom, mada to nije dobro, zato sto se detektuje promena tek nakon sto textarea izgubi fokus. Dakle, imate neki predlog?
 
Odgovor na temu

kazil
Robert Bašić
Full time PHP dev :)
Bačka Topola - Novi Sad

Član broj: 120044
Poruke: 686
*.dynamic.stcable.net.

Jabber: robertbasic@elitesecurity.org
ICQ: 446475288
Sajt: robertbasic.com


+2 Profil

icon Re: Kako detektovati kada korisnik paste-uje tekst u input polje ili textarea17.07.2010. u 22:18 - pre 166 meseci
Ne znam da li si nesto usput menjao na kodu, ali ja sam upravo na tvom demou, nakon c/p teksta, dobio izbrojane karaktere. Firefox 3.6.6 na Ubuntu 10.04. Tako da po meni tvoj brojac radi.
 
Odgovor na temu

m.stojanov
Test Test

Član broj: 126777
Poruke: 231
*.adsl.verat.net.



+3 Profil

icon Re: Kako detektovati kada korisnik paste-uje tekst u input polje ili textarea17.07.2010. u 22:25 - pre 166 meseci
Verovatno si c/p radio preko tastature i to je okej i treba da radi jer si time pozvao onkeyup event. Ali mene interesuje kako da izbrojim karaktere kada kopiram misem.
 
Odgovor na temu

kazil
Robert Bašić
Full time PHP dev :)
Bačka Topola - Novi Sad

Član broj: 120044
Poruke: 686
*.dynamic.stcable.net.

Jabber: robertbasic@elitesecurity.org
ICQ: 446475288
Sajt: robertbasic.com


+2 Profil

icon Re: Kako detektovati kada korisnik paste-uje tekst u input polje ili textarea17.07.2010. u 22:46 - pre 166 meseci
Probaj oninput event http://help.dottoro.com/ljhxklln.php za Mozilla i onpaste za IE http://www.java2s.com/Code/Jav...Handlers-Reference/onPaste.htm
 
Odgovor na temu

m.stojanov
Test Test

Član broj: 126777
Poruke: 231
*.adsl.verat.net.



+3 Profil

icon Re: Kako detektovati kada korisnik paste-uje tekst u input polje ili textarea17.07.2010. u 22:59 - pre 166 meseci
Hvala na savetu.

Pokusao sam oninput. Medjutim, radi samo na Chrome-u, kod mene, na Firefox-u NE (iako pise na linku da radi na FF).

Jos jednom, bas ti hvala.
 
Odgovor na temu

kelja

Član broj: 70429
Poruke: 1416
*.dynamic.isp.telekom.rs.



+35 Profil

icon Re: Kako detektovati kada korisnik paste-uje tekst u input polje ili textarea18.07.2010. u 02:15 - pre 166 meseci
Evo resenja:
http://tomdeater.com/jquery/character_counter/
 
Odgovor na temu

m.stojanov
Test Test

Član broj: 126777
Poruke: 231
*.adsl.verat.net.



+3 Profil

icon Re: Kako detektovati kada korisnik paste-uje tekst u input polje ili textarea18.07.2010. u 12:33 - pre 166 meseci
Hvala puno, to je to.
 
Odgovor na temu

[es] :: Javascript i AJAX :: Kako detektovati kada korisnik paste-uje tekst u input polje ili textarea

[ Pregleda: 2165 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.