Ver Mensaje Individual
  #3 (permalink)  
Antiguo 15/05/2013, 11:45
Avatar de sergiomaidana1989
sergiomaidana1989
 
Fecha de Ingreso: abril-2013
Ubicación: Vera, Santa Fe
Mensajes: 70
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: No puedo cambiar el Type de un input

No, no amigo.

Mira.
Ese formulario está validado con HTML5, y funciona bárbaro, mientras no sea Internet Explorer.
Ahora... Para IE creé la condición con HTML en el <head>

Código HTML:
Ver original
  1. <!--[if IE]>
  2.     (Script)
  3. <![endif]-->

Donde dice "(Script)" iría el código que encontré, y que no pude hacer funcionar.
Ese Script lo que haría es cambiar el <input type="submit"> a <input type="button">. ¿Por qué? Porque si queda en tipo "submit" envía igual el form, porque me ignora los "required" y el type="email".
Además, añadí otro script de validación en esa condición para que quede validado con js. Eso funciona perfecto también.
Pero necesito ese script que me convierta de "submit" a "button", porque por mas que salte un mensaje de error del otro script envía igual después el form.

Aquí dejaré el código que extraje de:
http://stackoverflow.com/questions/9093992/change-html-input-type-by-js

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  4. <title>Untitled Document</title>
  5. <script type="text/javascript" language="javascript">
  6. function changefield(){
  7.     document.getElementById("passwordbox").innerHTML = "<input id=\"passwordfield\" type=\"password\" name=\"password-field\" title=\"Password\" tabindex=\"2\" />";
  8.     document.getElementById("password-field".focus();
  9. }
  10. </head>
  11.  
  12. <div id="passwordbox">
  13. <input id="password-field" type="text" name="password-field" title="Password"onfocus="changefield();" value="Password" tabindex="2" />
  14. </div>
  15. <input type="submit" name="submit" value="sign in" tabindex="3" />
  16.  
  17. </body>
  18. </html>

Ahí esta. En este código me basé.

Espero ahora haya quedado más claro
Gracias.
__________________
Sergio Daniel Maidana