Terve
Pitäisi saada textareasta teksti joka on valittu, ja laittaa se diviin output.
<script language="javascript">
function valittu() {
txt = '';
if (window.getSelection) {
txt = window.getSelection();
} else if (document.getSelection) {
txt = document.getSelection();
} else if (document.selection) {
txt = document.selection.createRange().text;
}
else return;
document.formi.teksti.value = txt;
}
</script>
<input type="button" value="Valittu" onmousedown="valittu()">
<div id="teksti"></div><br>
<form name="formi"><textarea name="teksti" rows="5" cols="20"></textarea></form>Tämä toimii muuten, mutta en saa muokattua niin, että asettaisi tuon toiseen elementtiin.
<script language="javascript">
function valittu() {
txt = '';
if (window.getSelection) {
txt = window.getSelection();
} else if (document.getSelection) {
txt = document.getSelection();
} else if (document.selection) {
txt = document.selection.createRange().text;
}
else return;
minne = document.getElementById("teksti");
minne.value = txt;
}
</script>
<input type="button" value="Valittu" onmousedown="valittu()">
<div id="teksti"></div><br>
<form name="formi"><textarea name="tekst" rows="5" cols="20"></textarea></form>Tämä ei toimi. :/
Vain formien kentillä on value-ominaisuus.
Jos haluat tulkita tekstin HTML:nä, voit käyttää innerHTML-ominaisuutta (minne.innerHTML = txt). Jos haluat sen tavallisena tekstinä, voit käyttää tällaista funktiota:
function laita_sisalto(elementti, teksti) {
// Poistetaan vanha sisältö:
while (elementti.lastChild) {
elementti.removeChild(elementti.lastChild);
}
// Lisätään teksti:
teksti = document.createTextNode(teksti);
elementti.appendChild(teksti);
}
// Funktion käyttö koodissasi:
laita_sisalto(minne, txt);Aihe on jo aika vanha, joten et voi enää vastata siihen.