Plazma Skrevet 18. juni 2003 Skrevet 18. juni 2003 Har laget en teksteditor veldig lik den her på forumet (knapper for B, I, U osv). Men problemet er at jeg har en egen ingress-boks også (altså to textarea'er). Vil ha det slik at dersom jeg f.eks trykker på B-knappen, skal B-verdien (|B|) settes inn i den textarea'en som sist var active. Slik jeg forstår det, funker ikke activeElement fordi selve kanppen blir aktive når jeg trykker på den, og ikke textarea'en. Fins det no LastActive-liknende? eller blir alternativet å sette en variable ved onfocus på i to tekstboksene? i såfall, noen som kan vise et greit eksempel? På forhånd takk.
Neo Skrevet 18. juni 2003 Skrevet 18. juni 2003 Prøv å bruk funksjonen "onBlur()". Slik at du da f.eks lager en variabel som heter type og setter denne til 1 når du forlater det ene tekstområdet og til 2 når du forlater det andre. Skjønte du hva jeg mente?
Plazma Skrevet 18. juni 2003 Forfatter Skrevet 18. juni 2003 ikke helt nei kan veldig lite javascript. Men jeg tenkte du på noe slik? (forenklet kode) function insert(tag) { document.article.box.value += "[" + tag "]" } <textarea name="1" onBlur="box=this"> <textarea name="2" onBlur="box=this"> <input type="button" onclik="insert('b')">
b-urn Skrevet 18. juni 2003 Skrevet 18. juni 2003 Tror Neo mente at du skulle sette et flagg som indikerte hvilket felt som sist var aktivt. Da kunne insertfunksjonen sjekke mot dette for å avgjøre hvilket tekstfelt som skulle oppdateres. Din løsning var imidlertid ikke så dum den heller. Litt modifisert: <HTML> <HEAD> <SCRIPT LANGUAGE='javascript'> var objTextField; function setLastActive(objThis) { objTextField = objThis;} function insert(tag) { objTextField.value += "[" + tag + "]";} </SCRIPT> </HEAD> <BODY> <TEXTAREA NAME='textfieldA' ONBLUR='setLastActive(this)' ></TEXTAREA> <TEXTAREA NAME='textfieldA' ONBLUR='setLastActive(this)' ></TEXTAREA> <INPUT TYPE='button' VALUE='B' ONCLICK=insert('B');> </BODY> </HTML> BIW
Plazma Skrevet 19. juni 2003 Forfatter Skrevet 19. juni 2003 Forresten, et lite spm til Dersom jeg ikke har trykket i noen av boksene, men derimot trykker på knappen først, får jeg en liten advarsel i IE. Hvordan fikse dette?
b-urn Skrevet 19. juni 2003 Skrevet 19. juni 2003 if(objTextField!=undefined) objTextField.value += "[" + tag + "]"; Du kan alternativt legge på en feilmelding: if(objTextField!=undefined) objTextField.value += "[" + tag + "]"; else alert('Feltene er tomme, vennligst fyll dem ut først'); eller noe i den duren. Det kommer litt an på løsningen din. Tror kanskje det er bedre å sjekke mot hvert enkelt tekstfelt før du submit'er data, og gi en spesifikk feilmelding til hver av dem. BIW
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå