Pitäisi tehdä funktio joka lisää yhden merkin aktiiviseen "input" kenttään siihen kohtaan missä on tekstiosoitin.
Voisiko joku auttaa
7
726
Vastaukset
- pliiiiis...
Niin ja prototypes.js kirjasto on käytössä.
- asdf
... vähän tarkemmin: laita ne ko. html/js-kohdat ja laita linkki mistä lyötyy prototypes.js.
- pliiiiiiiis....
Tässä on koodi missä merkin lisäys on kovakoodattu a-nimisen input kenttään. Mutta haluan, että se lisäisi merkin siihen kenttään, joka on aktiivinen. Porototype.js löytyy koodissa määrätystä paikasta.
TEST
function char(data) {
document.form.a.value = document.form.a.value data;
}
X
Y - asdf
pliiiiiiiis.... kirjoitti:
Tässä on koodi missä merkin lisäys on kovakoodattu a-nimisen input kenttään. Mutta haluan, että se lisäisi merkin siihen kenttään, joka on aktiivinen. Porototype.js löytyy koodissa määrätystä paikasta.
TEST
function char(data) {
document.form.a.value = document.form.a.value data;
}
X
YTEST
var active = null; // tarvitaan globaali
function insert_at_cursor(textarea, str)
{
//IE support
if (textarea == null)
return;
if (document.selection) {
textarea.focus();
sel = document.selection.createRange();
sel.text = str;
}
//MOZILLA/NETSCAPE support
else if (textarea.selectionStart || textarea.selectionStart == '0') {
var startPos = textarea.selectionStart;
var endPos = textarea.selectionEnd;
textarea.value = textarea.value.substring(0, startPos) str
textarea.value.substring(endPos, textarea.value.length);
} else {
textarea.value = str;
}
textarea.focus(); //palauttaa fokuksen poista jos huono
}
function set_active(obj) {
active = obj;
}
X
Y
Lisää kursorin kohdalle mutta kursori siirtyy loppuun, enkä tiedä onnistuuko samalle paikalle palautus ... hmm
(insert-funktio löytyi tuolta: http://alexking.org/blog/2003/06/02/inserting-at-the-cursor-using-javascript) - asdf
pliiiiiiiis.... kirjoitti:
Tässä on koodi missä merkin lisäys on kovakoodattu a-nimisen input kenttään. Mutta haluan, että se lisäisi merkin siihen kenttään, joka on aktiivinen. Porototype.js löytyy koodissa määrätystä paikasta.
TEST
function char(data) {
document.form.a.value = document.form.a.value data;
}
X
YNäyttäisi että tuota käyttäen myös kursorin paikka pysyy: http://alexking.org/blog/2004/06/03/js-quicktags-under-lgpl/
- asdf
asdf kirjoitti:
TEST
var active = null; // tarvitaan globaali
function insert_at_cursor(textarea, str)
{
//IE support
if (textarea == null)
return;
if (document.selection) {
textarea.focus();
sel = document.selection.createRange();
sel.text = str;
}
//MOZILLA/NETSCAPE support
else if (textarea.selectionStart || textarea.selectionStart == '0') {
var startPos = textarea.selectionStart;
var endPos = textarea.selectionEnd;
textarea.value = textarea.value.substring(0, startPos) str
textarea.value.substring(endPos, textarea.value.length);
} else {
textarea.value = str;
}
textarea.focus(); //palauttaa fokuksen poista jos huono
}
function set_active(obj) {
active = obj;
}
X
Y
Lisää kursorin kohdalle mutta kursori siirtyy loppuun, enkä tiedä onnistuuko samalle paikalle palautus ... hmm
(insert-funktio löytyi tuolta: http://alexking.org/blog/2003/06/02/inserting-at-the-cursor-using-javascript)Kursorin position saa asetettua näin (mozilla/firefox)
//MOZILLA/NETSCAPE support
else if (textarea.selectionStart || textarea.selectionStart == '0') {
var startPos = textarea.selectionStart;
var endPos = textarea.selectionEnd;
textarea.value = textarea.value.substring(0, startPos) str
textarea.value.substring(endPos, textarea.value.length);
textarea.focus(); // kursorin position asetus str:n jälkeen
textarea.selectionStart = startPos str.length;
textarea.selectionEnd = startPos str.length;
}
Joku voisi testaa miten IE käyttäytyy tolla aiemalla koodilla. Jaa... Operalla toimii ja käyttää IE-koodia, joten toiminee oikein myös IE:llä. - pliiiiiiis....
asdf kirjoitti:
Kursorin position saa asetettua näin (mozilla/firefox)
//MOZILLA/NETSCAPE support
else if (textarea.selectionStart || textarea.selectionStart == '0') {
var startPos = textarea.selectionStart;
var endPos = textarea.selectionEnd;
textarea.value = textarea.value.substring(0, startPos) str
textarea.value.substring(endPos, textarea.value.length);
textarea.focus(); // kursorin position asetus str:n jälkeen
textarea.selectionStart = startPos str.length;
textarea.selectionEnd = startPos str.length;
}
Joku voisi testaa miten IE käyttäytyy tolla aiemalla koodilla. Jaa... Operalla toimii ja käyttää IE-koodia, joten toiminee oikein myös IE:llä.Tuo toimii loistavasti ainakin Macissa Safarilla.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Riikka runnoo: datakeskuksille tulee UUSI yritystuki
"Suomen valtio erikseen tukee esimerkiksi kryptovaluuttaan tai aikuisviihteeseen tai muuhun keskittyviä datakeskuksia."672277Eläkeläiset siirrettävä muuttotappioalueille
Joutoväki pois ruuhkauttamasta elättäjien arkea. Samalla putoaa jokaisen asumiskulut ja rahaa jää enemmän kuluttamiseen.2302182- 1201478
Jopa Espanjassa talous kasvaa, Purra vain irvistelee
Huomaa kuinka Purra on Suomen historian huonoin miniseteri, joka ei ole saanut aikaiseksi kuin tuhoa, Siis jopa vasemmis201282Kauppalehti - Törkeä skandaali paljastui: Espanja käytti EU-rahoja ihan muuhun kuin piti
Espanja on käyttänyt miljardeja euroja EU:n elpymisavustuksia eläkkeisiin ja sosiaalimenoihin – ja pyytää lisää. Espanj211242En kerro nimeäsi nainen
Sillä olet nyt salaisuus jota kannan sydämessäni. Tämä mitä tunnen ja kuinka sinuun vahvasti ihastuin on jo niin erikoin711200- 1201164
Uuden upotuskasteen vaiettu ongelma
Alkuseurakunnan kaste oli useamman vuosisadan upotuskaste, joka toimitettiin joko ulkona luonnon vesistöissä tai kasteki102969Olet kiva ihminen
En kiellä sitä yhtään. Sinussa on hyvin paljon erinomaisia puolia, enemmän varmasti kun meissä muissa. Sitten on puoli73959Auta mua mies
Ota vielä yhteyttä, keksi oikeat sanat että vuosien ajan kasvanut muuri murtuu meidän väliltä vaikka aluksi vain vähän.78909