Foros del Web » Programando para Internet » Javascript »

Eliminar testo predeterminado de un input text

Estas en el tema de Eliminar testo predeterminado de un input text en el foro de Javascript en Foros del Web. Tengo un problema con mi web. En ella, es posible colocar una url. Por ejemplo http:// unacosa.com/asdasd/asd/ He hecho script en php que reconoce la ...
  #1 (permalink)  
Antiguo 12/09/2010, 01:33
Avatar de mijailrv  
Fecha de Ingreso: noviembre-2009
Ubicación: <head> AQUI </head>
Mensajes: 145
Antigüedad: 14 años, 5 meses
Puntos: 5
Exclamación Eliminar testo predeterminado de un input text

Tengo un problema con mi web.
En ella, es posible colocar una url.
Por ejemplo
http://unacosa.com/asdasd/asd/

He hecho script en php que reconoce la url de ese input text siempre y cuando sea:
unacosa.com/asdasd/asd/

pero por mas que lo pido, hay algunos usuarios que siguen poniendo http://unacosa.com/asdasd/asd/, dando error en el script php.

Por lo cual decidi agregar el "http://" al input text en el diseño de la pagina mediante css, dejando claro que solo deben colocar el usuario (sin el http://) en ese text.

Sin embargo siguen habiendo usuarios necios que reportan que no pueder usarlo.

Por lo cual ahora deseo que automáticamente mediante javascript, cuando alguien escriba el http:// lo borre.

¿Es posible esto?

No deseo cambiar el script PHP ya que funciona muy bien a exepcion de ese pequeño detalle, y se que si intento modificar el codigo php, tendre problemas con otras cosas.
__________________
Diccionario de Budismo SGI

Pagina web personal Mijail Rondon

Última edición por mijailrv; 12/09/2010 a las 01:40
  #2 (permalink)  
Antiguo 12/09/2010, 02:20
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Eliminar testo predeterminado de un input text

pues deberia de manejarlo desde php. no porque con javascript no se pueda, sino porque estas enfocando la correccion en un ambito que el usuario puede controlar. primero, sin importar cuan bueno sea el script, el usuario decide si tu script puede interpretarse en el navegador. y segundo, no veo el por que omitir el protocolo. en ese sentido, deberias admitirlo en el script de php. si es un rotundo no, desde php deberias buscar la existencia de ese inicio y tratar la cadena si es necesario.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 12/09/2010, 02:35
Avatar de mijailrv  
Fecha de Ingreso: noviembre-2009
Ubicación: <head> AQUI </head>
Mensajes: 145
Antigüedad: 14 años, 5 meses
Puntos: 5
Respuesta: Eliminar testo predeterminado de un input text

Tienes razon... muchas gracias, me habia olvidado del detalle de que pueden existir usuarios sin javascript, que tendran problemas si no lo modifico desde el PHP.

Sin embargo puedo usar las dos cosas, lo de javascript para que se vea mejor en el diseño de la web.
y en php para que se ejecute correctamente no importando si se utiliza el http:// o sin http://

Por la parte de PHP con un str_replace, y por el lado del cliente consegui esta funcion que lo hace perfectamente.

Código Javascript:
Ver original
  1. function eliminar(entry) {
  2. out = "http://"; // replace this
  3. add = ""; // with this
  4. temp = "" + entry; // temporary holder
  5.  
  6. while (temp.indexOf(out)>-1) {
  7. pos= temp.indexOf(out);
  8. temp = "" + (temp.substring(0, pos) + add +
  9. temp.substring((pos + out.length), temp.length));
  10. }
  11. document.subform.url.value = temp;
  12. }

con esto y colocando un onChange="eliminar(document.subform.url.value);" se estara eliminando el http://, suponiendo que el <form> tiene como name="subform" y el input tiene como name="url"
__________________
Diccionario de Budismo SGI

Pagina web personal Mijail Rondon
  #4 (permalink)  
Antiguo 12/09/2010, 02:48
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Eliminar testo predeterminado de un input text

a modo de sugerencia. no digo que este mal el codigo. pero deberias de comenzar a experimentar con expresiones regulares y las funciones que lo utilizan. veras que el codigo se puede reducir considerablemente y hacerlo mas legible.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Etiquetas: eliminar, input, predeterminado, 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 15:41.