Me he visto en la tesitura de intentar cambiar en dinámico el tipo de un input de tipo text a tipo password y viceversa. Algo tan sencillo como hacer lo siguiente: obj = document. getElementById('campo_password'); obj.type = 'text'; Todo funciona perfectamente con Firefox pero cuando lo he probado con Internet Explorer 7 el navegador me devuelve un error con el objeto y no hay manera. He probado a realizar el cambio desde jquery para que el framework se encargara de realizar la modificación pero tampoco ha funcionado. Internet Explorer devuelve el mismo error. Grrrrrrrrrrr Al final he encontrado este código por Internet que soluciona el problema. Hace más cosas pero seguro que un programador espabilado sabrá aislar la funcionalidad que necesite ;-) Llamandolo así convertireís el campo a tipo text donde thisInput es el objeto input changeInputType(thisInput,'text',txtLabel,false,true); function changeInputType( oldElm, // a reference to the input … [Read more...] about Problemas al cambiar el tipo de un input password con Internet Explorer
javascript
Pasar parámetros por defecto en Javascript
Es una lástima pero Javascript, al contrario que otros lenguajes, no permite pasar parámetros por defecto en sus funciones. Esto tiene solución mediante un pequeño truco en el código. Imaginad que tenemos esto: function test(arg) { arg = arg || 23; return arg; } Si llamamos a test() sin parametro nos va a devolver 23. Problema resuelto de forma sencilla ;-) Pero seamos más puristas. Si por ejemplo la llamamos pasándole el valor NULL nos vamos a encontrar con que también nos devolverá 23 y en algunos casos nos puede interesar manejar el valor NULL de forma diferente Si quisieramos corregirlo tendríamos que utilizar esto: function test(arg) { arg = (typeof arg == ‘undefined’) ? 23 : arg; return arg; } Con esta opción si llamamos a test() sin parámetro nos devuelve 23 pero si llamamos a test(null) nos devolvería null con lo que podriamos manejar el caso de forma diferente. … [Read more...] about Pasar parámetros por defecto en Javascript
Error en parseInt de Javascript
Existe un bug en la función parseInt de Javascript i Jscript (asp) que provoca que la función devuelva 0 para ciertos valores. En concreto el error parece que tiene que ver con la interpretación del primer carácter cuando este es 0 ya que se interpreta que lo que sigue es en base octal y para aquellos números que no tienen representación en octal se devuelve erróneamente 0. Pongo un ejemplo: parseInt('07') -> devolverá 7 parseInt('08') -> devolverá 0 parseInt('09') -> devolverá 0 parseInt('10') -> devolverá 10 Imaginaros los estropicios que puede provocar esto en la conversión de cadenas a fechas, caso donde me he encontrado el error. En concreto el día '08/07/2008' que yo interpreto como 8 de Julio de 2008, el javascript me lo daba como 30 de Julio de 2008 al devolver cero la llamada parseInt('08') Para solucionarlo hay que decirle a parseInt que trabaje en base 10 y el bug desaparece inmediatamente. parseInt('08', 10) devuelve el resultado esperado. … [Read more...] about Error en parseInt de Javascript
Código javascript cumpliendo el estandar XHTML
Seguramente ya os habrá pasado alguna vez. Programas una página XHTML siguiendo el estandar Strict y cuando la validas te encuentras con que el código javascript empotrado dentro del código no cumple dicho estandar. En ese caso si tienes prisa lo normal es sacarlo a un fichero js y hacer un include del mismo en el header. Existe otra solución más práctica. Los chicos del W3C están en todo y nos han facilitado una sintaxis que nos permite insertar el código javascript en la página, siempre y cuando lo protejamos con ciertas etiquetas. Aquí tenéis un ejemplo: Como veis es muy fácil y nos permitirá solucionar este pequeño problema. Para quien se este iniciando en el tema SEO y no lo sepa aún, el XHTML Strict es una forma de guiñarle un ojo a los crawlers de los buscadores, en especial a Google, quienes agradecen con mejores posiciones a aquellos sites que cumplen con el XHMTL Strict. … [Read more...] about Código javascript cumpliendo el estandar XHTML
Firebug
Para aquellos que aún no lo conozcan, Firebug se ha convertido en un plugin imprescindible para el desarrollo web. Entre otras cosas podemos sorprendednos por su consola que permite depurar nuestros scripts en javascript en tiempo real, añadiendo breakpoints o incluso realizando watching de las variables con lo que podremos consultar su valor en cualquier instante. Si utilizas AJAX, Firebug logará cualquier petición que se realize al servidor permitiendte tener mayor control de la información enviada y recibida. Además te permite inspeccionar cualquier objeto gráficamente de forma que te localiza el objeto dentro del código con solo hacer click sobre el mismo en pantalla. A esto hay que añadirle la posibilidad de modificar sus propiedades, entre ellas los CSS viendo las modificaciones en tiempo real sin necesidad de recargar la página. Una joya, vaya. Firebug es un plugin de Firefox y se instala como es habitual de forma cómoda y rápida desde el mismo navegador. Para aquellos que … [Read more...] about Firebug