Foros del Web » Programando para Internet » Javascript »

Edicion en text area

Estas en el tema de Edicion en text area en el foro de Javascript en Foros del Web. hola mi pregunta es como hago para que al seleccionar una palabra o frase en un textarea y al darle click en un boton se ...
  #1 (permalink)  
Antiguo 10/05/2010, 17:17
Avatar de wiltoncb  
Fecha de Ingreso: abril-2010
Ubicación: villavicencio Colombia
Mensajes: 51
Antigüedad: 14 años
Puntos: 0
Edicion en text area

hola mi pregunta es como hago para que al seleccionar una palabra o frase en un textarea y al darle click en un boton se le asigne una etiqueta ejemplo (abreetiqueta)aquie le texto seleccionado(cierreetiqueta).

yo logro que al dar click en un boton aparezca caracteres en el textarea pero no logro que al seleccionar parte del texto y darle click en un boton se le asigne una etiqueta que bien podria ser color, tipo de letra, fondo etc etc

de ante mano les agradezco este es mi priemr tema planteado ya tengo un foro armado pero quiero que los usuarios puedand editar sus mensajes mas o menos como este foro.
  #2 (permalink)  
Antiguo 10/05/2010, 17:23
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: Edicion en text area

a eso se le denomina: BBCode.

podrias hacer un javascript para que te resulte, pero... para que hacer algo que ya esta hecho en la web.... solo busca y encontraras ^^

Suerte.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #3 (permalink)  
Antiguo 11/05/2010, 05:53
Avatar de wiltoncb  
Fecha de Ingreso: abril-2010
Ubicación: villavicencio Colombia
Mensajes: 51
Antigüedad: 14 años
Puntos: 0
Respuesta: Edicion en text area

el poblema es que de java se muy poco, le agradeceria que me diera un ejemplo sencillo si lo sabes yo soy bueno para entender los codigos asi no sepa mucho de ello ,

LE AGRADESCO HERMANO
  #4 (permalink)  
Antiguo 11/05/2010, 11:06
Avatar de wiltoncb  
Fecha de Ingreso: abril-2010
Ubicación: villavicencio Colombia
Mensajes: 51
Antigüedad: 14 años
Puntos: 0
Respuesta: Edicion en text area

listo ya logre lo que queria era bastante sencillo con un javascript aqui dejo el codigo por si alguien lo llegara a necesitar:

Código HTML:
Ver original
  1. <title>Editor bbCode</title>
  2. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  3. function instag(tag){
  4. var input = document.form1.contenido;
  5. if(typeof document.selection != 'undefined' && document.selection) {
  6. var str = document.selection.createRange().text;
  7. input.focus();
  8. var sel = document.selection.createRange();
  9. sel.text = "[" + tag + "]" + str + "[/" +tag+ "]";
  10. sel.select();
  11. return;
  12. }
  13. else if(typeof input.selectionStart != 'undefined'){
  14. var start = input.selectionStart;
  15. var end = input.selectionEnd;
  16. var insText = input.value.substring(start, end);
  17. input.value = input.value.substr(0, start) + '['+tag+']' + insText + '[/'+tag+']'+ input.value.substr(end);
  18. input.focus();
  19. input.setSelectionRange(start+2+tag.length+insText.length+3+tag.length,start+2+tag.length+insText.length+3+tag.length);
  20. return;
  21. }
  22. else{
  23. input.value+=' ['+tag+']Reemplace este texto[/'+tag+']';
  24. return;
  25. }
  26. }
  27. function inslink(){
  28. var input = document.form1.contenido;
  29. if(typeof document.selection != 'undefined' && document.selection) {
  30. var str = document.selection.createRange().text;
  31. input.focus();
  32. var my_link = prompt("Enter URL:","http://");
  33. if (my_link != null) {
  34. if(str.length==0){
  35. str=my_link;
  36. }
  37. var sel = document.selection.createRange();
  38. sel.text = "[a href=\"" + my_link + "\"]" + str + "[/a]";
  39. sel.select();
  40. }
  41. return;
  42. }else if(typeof input.selectionStart != 'undefined'){
  43. var start = input.selectionStart;
  44. var end = input.selectionEnd;
  45. var insText = input.value.substring(start, end);
  46. var my_link = prompt("Enter URL:","http://");
  47. if (my_link != null) {
  48. if(insText.length==0){
  49. insText=my_link;
  50. }
  51. input.value = input.value.substr(0, start) +"[a href=\"" + my_link +"\"]" + insText + "[/a]"+ input.value.substr(end);
  52. input.focus();
  53. input.setSelectionRange(start+11+my_link.length+insText.length+4,start+11+my_link.length+insText.length+4);
  54. }
  55. return;
  56. }else{
  57. var my_link = prompt("Ingresar URL:","http://");
  58. var my_text = prompt("Ingresar el texto del link:","");
  59. input.value+=" [a href=\"" + my_link + "\"]" + my_text + "[/a]";
  60. return;
  61. }
  62. }
  63. </head>
  64.  
  65. <form name="form1" method="post" action="">
  66. <input type="button" name="Submit" value="B" onClick="instag('b')">
  67. <input type="button" name="Submit3" value="U" onClick="instag('u')">
  68. <input type="button" name="Submit4" value=" I " onClick="instag('i')">
  69. <input type="button" name="Submit2" value="LINK" onClick="inslink()">
  70. <br>
  71. <textarea name="contenido" cols="40" rows="10" id="contenido"></textarea>
  72.  
  73. </form>
  74. </body>
  75. </html>

Etiquetas: area, txt
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:38.