2011-08-16 21 views
11

Estoy tratando de implementar la validación de formulario html5 para mi aplicación web pero no está funcionando con safari 5.0.1, iphone3 o android2. ¿Se requiere el atributo de entrada de formulario, patrón o cualquier cosa relacionada con la validación no admitida por estos navegadores o estoy cometiendo un error?Validación de formulario Html5 no funciona con iphone, android o safari

Está trabajando con mozilla, cromo y ópera. Si utilizo la validación de formulario html5, nuevamente necesito escribir el código como alternativa. ¿Es una buena idea usar esto o la forma anterior como jquery y javascript simple? Si alguien tiene una idea, por favor dígame.

favor verifique este enlace (i escribió algo de código) y probarlo en iPhone, Android o Safari:

http://24ways.org/examples/have-a-field-day-with-html5-forms/24ways-form.html

+5

Usted debe empezar a marcar las respuestas correctas como la respuesta, si desea que sus preguntas sean contestadas en el futuro. La gente hace un esfuerzo por resolver su problema. Lo menos que puedes hacer es apreciarlos :) – NomadTraveler

Respuesta

16

Si estás usando jQuery, que podría echar un vistazo a the h5Validate plugin. Esto agrega compatibilidad con navegadores cruzados para validaciones de formularios hasta IE6. De acuerdo con la project's website:

  • Regularmente probado en 13 diferentes navegadores, Internet Explorer 6 - IE9, Firefox, Chrome , iPhone y Android.

  • Implementa las mejores prácticas basadas en 1,000 encuestas de usuarios, varios estudios de usabilidad y el comportamiento de millones de usuarios en entornos de producción en vivo.

compatibles:

  • escritorio: IE 9, 8, 7, 6, Chrome, Firefox, Safari y Opera. Probado en Windows 7 y Mac.

  • móviles: iPhone, Android, Palm WebOS

+1

sí, investigué eso. eso es genial Gracias. – prabhat

+1

+1 para la sugerencia del complemento h5validate – RY35

2

el fin de ser lo más amigable posible entre navegadores, siempre debe código con la expectativa de que las plataformas de cliente no tendrá soporte para cosas más nuevas, como la validación de HTML5. Por lo tanto, si bien aprovechar las capacidades de los navegadores más nuevos es excelente y le permite brindar a sus usuarios una experiencia mucho más agradable, aún es importante recordar que no todos tienen las mismas capacidades.

Dicho esto, cualquier tipo de validación que realice en el navegador (con Javascript o HTML5) es solo una conveniencia para el usuario y un ahorro en las llamadas al servidor. Debe SIEMPRE implementar la validación en el servidor porque es muy fácil eludir la validación del lado del cliente. Mi forma preferida de desarrollar es hacer primero la validación por completo del lado del servidor, y una vez que sea sólida, agregue una validación basada en JavaScript y luego basada en HTML5, utilizando un enfoque de "desarrollo progresivo" al progressive enhancement.

+0

Gracias por esta buena idea – prabhat

+0

@prabhat - Si una respuesta dada resuelve su pregunta, o es la mejor respuesta a su pregunta, márquela como aceptada. Si la respuesta es útil (incluso si no es la respuesta que acepta), vote por favor. – cdeszaq

4

Firefox y Opera tanto soporte para HTML 5 y en particular la validación de formularios ...

Acabo de pasar dos días escribiendo un código nuevo sólo para darse cuenta de IE y Safari todavía no aplican la validación HTML 5 ...

Mi elección es clara, ya sea que recodificar el uso de JavaScript (difícil, ya que la forma se crean dinámicamente) o decirle a todos a utilizar Firefox u Opera, de lo contrario la validación no se implementa ...

Mi elección ... mantener mi código actual y esperar a que los demás lo pongan al día ...

Firefox e IE10 son compatibles.

Opera y Chrome lo soportan todo.

Safari es compatible también con todo, pero la validación de formularios está deshabilitada de forma predeterminada.

Actualizar ... ¿Acabo de encontrar una publicación que sugiere que Safari no es compatible con la validación de formulario, no es de extrañar que no pudiera encontrarlo para encenderlo?

+0

4 años después, todavía no se ha validado la forma (wtf safari?) – Frankenmint

0

He tenido el mismo problema con una solicitud de búsqueda de empleo que estoy en proceso de construcción. El complemento h5Validate resolvió este problema exacto. Se plugins en los agujeros de validación HTML5 para muchos navegadores y dispositivos:

  • escritorio: IE 9, 8, 7, 6, Chrome, Firefox, Safari y Opera. Probado en Windows 7 y Mac.
  • móvil: iPhone, Android, Palm WebOS

Si alguna vez has usado el plugin de validación de jQuery, es muy similar. Piense en ello como una extensión para formularios HTML5.

0

¿Por qué no pruebas webshim? Tuve el mismo problema y ahora todo está bien. Todo lo que tiene que hacer es descargar la biblioteca y luego colocar la carpeta js-webshim en su proyecto. Incluir este código

<script src="js-webshim/minified/polyfiller.js"></script> 

<script> 
    webshim.activeLang('en'); 
    webshims.polyfill('forms'); 
    webshims.cfg.no$Switch = true; 
</script> 

espero que esto le ayudará, así

Cuestiones relacionadas