Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: JavaScript: Javascript ja maalattu/valittu teksti

Faarao [30.08.2005 10:05:57]

#

Hei

Olen yrittänyt googlella jo etsiä, mutta en ole saanut ratkaistua tätä ongelmaa.

Eli pitäisi saada sellainen juttu textareaan kun maalaa tekstistä jonkin pätkän ja painaa kuvaa joka lisäisi BBcoden tämän valitun tekstin alkuun ja loppuun. Tällä hetkellä homma toimii niin että kuvaketta painamalla se lisää BBcoden tektin loppuun. Olisiko tästä jotain mallia tai muita apuja.

Kiitos!

BadSource [30.08.2005 13:37:51]

#

Koodikirjastostani löysin vanhan leikkaa/liimaa-purkan, jolla tagien lisääminen luonnistuu.

<html>
<body>
<script language="JavaScript"  type="text/JavaScript">
function formatText (el,tagstart,tagend)
{
 if (el.setSelectionRange) //Firefox jne.
 {
  el.value = el.value.substring(0,el.selectionStart) + tagstart + el.value.substring(el.selectionStart,el.selectionEnd) + tagend + el.value.substring(el.selectionEnd,el.value.length)
 }
 else //IE
 {
  var selectedText = document.selection.createRange().text;
  if (selectedText != "")
  {
   var newText = tagstart + selectedText + tagend;
   document.selection.createRange().text = newText;
  }
 }
}
</script>
<form name="form1" method="post" action="">
<textarea name="tarea" rows=5 cols=40 id="tarea"></textarea>
<input type="button" onClick=" formatText(document.getElementById('tarea'),'<b>','</b>')" value="hi" />
</body>
</html>

Faarao [30.08.2005 13:41:51]

#

Kiitos tuosta. Pitää kokeilla soveltaa.

Faarao [01.09.2005 11:59:29]

#

Sellainen tuli vielä vastaan että, kun tekeen noita listoja.

<ul>
<li>Rivi 1</li>
<li>Rivi 2</li>
<li>Rivi 3</li>
</ul>

Tuosta edellä mainitusta BadSourcen koodista pitäisi siis saada nuo rivit selville ja että tagit menisi oikeisiin kohtiin.

Faarao [15.09.2005 12:06:01]

#

Saisiko tähän scriptiin jotain selostusta? Tai apua miten tätä pitäisi soveltaa?

<html>
<body>
<script language="JavaScript"  type="text/JavaScript">
function formatText (el,tagstart,tagend)
{
if (el.setSelectionRange) //Firefox jne.
{
  el.value = el.value.substring(0,el.selectionStart) + tagstart + el.value.substring(el.selectionStart,el.selectionEnd) + tagend + el.value.substring(el.selectionEnd,el.value.length)
}
else //IE
{
  var selectedText = document.selection.createRange().text;
  if (selectedText != "")
  {
   var newText = tagstart + selectedText + tagend;
   document.selection.createRange().text = newText;
  }
}
}
</script>
<form name="form1" method="post" action="">
<textarea name="tarea" rows=5 cols=40 id="tarea"></textarea>
<input type="button" onClick=" formatText(document.getElementById('tarea'),'<b>','</b>')" value="hi" />
</body>
</html>

Pitäsis saada tuosta koodista sellainen joka osaa lisätä esim. nämä tagit valittuun tekstiin.

<ul>
<li>Rivi 1</li>
<li>Rivi 2</li>
<li>Rivi 3</li>
</ul>

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta