Autor | Zpráva | ||
---|---|---|---|
turnhofer Profil |
#1 · Zasláno: 13. 11. 2019, 14:56:50
Ahoj, prosím o pomoc,
potřebovala bych, aby java script smazal poslední písmeno z formuláře pomocí tlačítka. Zní to třeba nelogicky, ale nemůže se použít tlávesnice či myš, jedná se o pomůcku pro pacienty. Byl by někdo ochoten pomoci? Část js, co zatím nefunguje: <script> $('.mazadlo').click( function(){ var inputString = $('#text').val(); var shortenedString = inputString.substr(0,(inputString.length -1)); $('#text').val(shortenedString); return false; }); </script> [pre] <div class="platno"> <textarea style id="txt" type="text" width="500" height="200" background-color="black" font="40" name="disabled-keyboard--input" value="Field with disabled keyboard" data-disable-touch-keyboard></textarea> <div id="ovladace"> <form> <a href="#" title=""><input type="submit" value="<<" class="mazadlo"></a> </form> </div> Moc děkuji |
||
blaaablaaa Profil |
turnhofer:
Kromě nesmyslů v html ( background-color , font , ...) je hlavní chyba použití #text , když textarea má id="txt" , má být tedy #txt .
$('.mazadlo').click(function(e){ e.preventDefault(); var inputString = $('#txt').val(); if ( !inputString.length ) return; $('#txt').val( inputString.substr(0,(inputString.length -1))); }); <textarea id="txt"></textarea> <input type="button" value="<<" class="mazadlo"> |
||
turnhofer Profil |
#3 · Zasláno: 13. 11. 2019, 15:08:10
Děkuji, vyzkouším doma (cca v osm). Byl bys event. ochoten pomoci víc kdyby to zlobilo? Počítám s tím, že bych to zaplatila, je to moc důležitý. Děkuji, eva
|
||
Kcko Profil |
turnhofer:
Jde to i snadněji jsbin.com/cacegevizo/edit?html,css,output |
||
turnhofer Profil |
Kcko:
Děkuji, to by asi fungovalo, kdybychom tam ten text už znali. Ale já ho nevím. člověk to do toho komentáře bude psát tlačítky a pak třeba jeden poslední znak potřebuje smazat zase tlačítkem. Jestli je potřeba, tak pošlu rovnou odkaz blaaablaaa: Ahoj, děkuji, už jsem zkoušela, ale nefunguje, nevím proč. Mohla bych ti poslat odkaz třeba do emailu? Dík za pomoc, e |
||
Tomášeek Profil |
turnhofer:
Eh? Kckovo řešení maže to jakýkoliv poslední vložený znak. Co to takhle aspoň zkusit? |
||
turnhofer Profil |
#7 · Zasláno: 13. 11. 2019, 21:31:58
Tomášeek:
zkoušela jsem, nefunguje to. Podíváš se, prosím, jak to vypadá v reálu? Třeba bude jasnější, proč jsem to vymyslela takhle. Já neumím psát js jako vy...turnhofer.wz.cz/dp/?go=abeceda |
||
Tomášeek Profil |
#8 · Zasláno: 13. 11. 2019, 21:48:49
turnhofer:
Nikde tam nevidím implementované řešení od Kcko... Začni tím, že jej vložíš. |
||
turnhofer Profil |
#9 · Zasláno: 13. 11. 2019, 22:14:01
Tomášeek:
tak jo, je to na webu, ale nefunguje. zkoušela jsem to, vážně. |
||
Kcko Profil |
#10 · Zasláno: 13. 11. 2019, 23:43:09
turnhofer:
Já se teda jako uplně nedivím, že to nefunguje máš JS konzoli plnou chyb. |
||
Tomášeek Profil |
#11 · Zasláno: 13. 11. 2019, 23:45:35
turnhofer:
Ani teď to tam nevidím... A začni tím, že odstraníš chyby z konzole, které tam jsou. Pak pokračuj tím, že vložíš a odzkoušíš Kckův kód. |
||
Kajman Profil |
turnhofer:
Použijte kód z [#2] od blaaablaaa Kckův kód sice používá přehlednější slice, ale nezachovává zaměření správných elementů, pokud je na stránce víc butonů a inputů, a nepřeruší odeslání díky return false jak v [#1] nebo preventDefault() jak v [#2] (pokud je button typu button nebo submit). Také pozor, aby js kód byl až po html, se kterým chce pracovat... <form> <textarea id="txt">ABCD</textarea> <input type="button" value="<<" class="mazadlo"> </form> <script> $('.mazadlo').click(function(e){ e.preventDefault(); var inputString = $('#txt').val(); if ( !inputString ) return; $('#txt').val( inputString.slice(0,-1) ); }); </script> Hlavní chyba v prapůvodním kódu je nesoulad mezi identifikátory txt a text. |
||
turnhofer Profil |
#13 · Zasláno: 14. 11. 2019, 09:14:37
Kajman:
Dekuju ti, vyzkoušet můžu až večer, jsem v práci. |
||
Časová prodleva: 4 roky
|
0