Foros del Web » Programando para Internet » Javascript »

Pasar a negrita un texto

Estas en el tema de Pasar a negrita un texto en el foro de Javascript en Foros del Web. He estado buscando por internet y no creo haber encontrado lo que quiero. Me parece que es sencillo, aunque no estoy seguro. Pretendo que el ...
  #1 (permalink)  
Antiguo 05/01/2005, 05:44
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 4 meses
Puntos: 28
Pregunta Pasar a negrita un texto

He estado buscando por internet y no creo haber encontrado lo que quiero. Me parece que es sencillo, aunque no estoy seguro. Pretendo que el contenido de un campo de texto se escriba en negrita dándole a un botón. Tengo un texto, a su lado un input type="text" y al lado el botón. Si le doy al botón, lo que hay dentro del input coge el tag <B>. Si está en todas partes, en este foro se ve, pero pretendo algo como lo que he dicho. Muchas gracias por la ayuda
  #2 (permalink)  
Antiguo 05/01/2005, 05:53
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola Ember

No entiendo bien tu pregunta. ¿Quieres que el texto se vea en negrita? ¿que se vea en negrita el contenido del textbox? o ¿que el contenido del textbox se vea como texto en negrita?

Si poner el código que tienes será más fácil ayudarte.

Saludos,
  #3 (permalink)  
Antiguo 05/01/2005, 06:01
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 4 meses
Puntos: 28
function cambiotexto(){
document.frm.field.value="<b>"+document.frm.field. value+"</b>";
}

Creo que esta es la función adecuada, aunque me hace una cosa rara... Verás estoy creando tablas con un contenido de una forma "sencilla". Algunos valores de las celdas van en negrita, yo elijo cuáles. De esa forma, le doy al botón que he creado y crea la etiqueta de apertura y cierre. Peeeeero ahí viene el problema. El código de la celda donde he puesto negrita es <TD>&lt;b&gt;asdasd&lt;/b&gt;</TD>

¿Por qué hace eso? Para ver el código de la tabla uso document.frm.tableCode.value = objTable.outerHTML;

Si te pego todo el código a lo mejor me pegas tú a mí :P
  #4 (permalink)  
Antiguo 05/01/2005, 06:04
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola:

Si se aplica a una cadena el método bold(), envuelve la cadena en tags <b>
prueba: "hola".bold();

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 05/01/2005, 06:11
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 4 meses
Puntos: 28
El problema es que cuando añado la celda a la tabla y luego veo el código, el código de la celda, valga la redundancia, es éste: <TD>&lt;B&gt;asdasd&lt;/B&gt;</TD>
Por alguna razón el outerHTML no se lleva bien con <>, ¿no?
  #6 (permalink)  
Antiguo 05/01/2005, 06:19
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola de nuevo.

Pero... aunque el código te salga así, se verá en negrita ¿o no?

Saludos,
  #7 (permalink)  
Antiguo 05/01/2005, 06:29
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 4 meses
Puntos: 28
Si yo uso el document.write y genero así la tabla, me respeta las etiquetas que cree de esa manera, pero cuando uso el outerHTML no, porque la apertura y cierre de etiqueta no las lee como tales, o eso me parece. Es decir, yo uso el mismo método para escribir en negrita. Escribo algo dentro del campo de texto, le doy al botón y el campo de texto queda así: <B>Hola</B>. Si genero el código con document.write el contenido de la celda queda en negrita, pero si lo genero con outerHTML queda así: &lt;B&gt;Hola&lt;/B&gt;

Es muy raro, lo sé, pero es lo que me sucede. Y solo veo esa diferencia, la forma de generar el código.
  #8 (permalink)  
Antiguo 05/01/2005, 13:19
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola otra vez:

Ember: Si no me equivoco, con outerHTML, solo te va a funcionar con explorer...
Tal vez sea mejor usar parentNode.innerHTML que son 2 cosas que reconocen todos los navegadores modernos.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #9 (permalink)  
Antiguo 07/01/2005, 04:07
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 4 meses
Puntos: 28
Tampoco funciona, el resultado es el mismo. Me imagino que tengo que optar por document.write y generar el código de la tabla de esa forma. Muchas gracias por la ayuda :))
  #10 (permalink)  
Antiguo 07/01/2005, 04:15
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 4 meses
Puntos: 28
He encontrado la siguiente función para modificar el texto seleccionado en un textarea y pasarlo a negrita:

function cambiotexto(txtArea){
txtAreaName = txtArea.name;
txtRange = document.all[txtAreaName].createTextRange();
txtContainer = txtRange.parentElement().name;
objRange = document.selection.createRange();
hiliteTxt = objRange.text;
toBoldTxt = "<b>" + hiliteTxt + "</b>";
if(hiliteTxt != ""){
objRange.text = toBoldTxt;
}
}

El problema es que no sé qué tengo que modificar para adaptarlo a mi documento, es decir, qué representa cada cosa dentro de esa función para luego cambiarlo. Siempre que cambio algo, luego me da un error y me dice que lo que he cambiado no es un objeto o es nulo...
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 00:18.