2011-11-22 79 views
10

Necesito saber si existe una solución que funcione en todos los principales navegadores para validar un xml contra un xsd. No tengo tiempo para crear la funcionalidad de validación real por mi cuenta. Es para un proyecto que se debe hacer en 2 semanas como un examen para mi aprendizaje.Validar un xml contra xsd con JS/jQuery

Hacer un validador xml como jQuery sería bueno. Entonces tengo 2 preguntas.

¿Existe un complemento/funcionalidad de validación xml prefabricado en JS o jQuery como el http://php.net/manual/de/domdocument.schemavalidate.php de PHP? Sin ActiveX, ya que ActiveX solo es compatible con IE (afaik). Y es desagradable, si no recuerdo mal, el usuario siempre tiene que estar de acuerdo.

Siempre he encontrado, la validación hecha a sí misma de XML (sin esquemas) o cosas hechas con ActiveX. Entonces, si no hay un complemento/funcionalidad de validación xml al cual solo puedo pasar un xml y un xsd, me gustaría obtener una introducción rápida sobre cómo lo haría yo mismo, así puedo mejorar la imagen. Probablemente es mucho trabajo hacer mi propia validación xml contra xsd, ¿verdad?

Gracias

+0

** ¿De dónde ** vienen XSD y XML a su script? – skafandri

+0

No soy el autor de la pregunta original, pero en mi caso (que fue la razón para agregar el bounty) ambos se alojarán en el mismo servidor que también proporciona las fuentes de HTML y JavaScript. – Chris

+0

@Chris, ¿estaría bien si la solución funciona solo en Internet Explorer? –

Respuesta

9

sugeriría para realizar una solicitud de Ajax, validar en el servidor y devolver la respuesta a JS.

+2

Esta sería una buena y válida solución para seguir. Pero lamentablemente no es una solución a la pregunta sobre la validación en el cliente. – Chris

+0

Vaya con Ajax y valídelo del lado del servidor. No existe una solución pure-js en este momento, solo la que usa ActiveX. – c2h5oh

8

Sé que usted prefiere una solución jQuery, pero hay algo que se desarrolló en JS, y funciona de la manera que desee.

http://syssgx.github.io/xml.js/

Este enlace da 3 formas de interacción:

  • (a través del navegador) archivos de arrastrar y soltar XML y luego valide;
  • (a través del navegador) copie & pegue el contenido XML en "textareas" y luego valide;
  • (import/inlcude) agregando el archivo JS a su aplicación web y validarlo (como se muestra en la página).
Cuestiones relacionadas