2011-11-22 11 views
10

के साथ xsd के खिलाफ एक एक्सएमएल मान्य करें मुझे पता होना चाहिए कि अगर कोई समाधान है जो किसी एक्सएसडी के खिलाफ एक्सएमएल को मान्य करने के लिए सभी प्रमुख ब्राउज़रों में काम करता है। मेरे पास वास्तविक सत्यापन कार्यक्षमता बनाने के लिए समय नहीं है। यह एक ऐसी परियोजना के लिए है जिसे मेरी शिक्षुता के लिए परीक्षा के रूप में 2 सप्ताह में किया जाना चाहिए।जेएस/jQuery

एक jQuery लॉगिन के रूप में एक एक्सएमएल सत्यापनकर्ता करना अच्छा होगा। तो मुझे 2 प्रश्न मिले।

क्या जेएस या jQuery में PHP की http://php.net/manual/de/domdocument.schemavalidate.php जैसी पूर्व-निर्मित xml सत्यापन प्लगइन/कार्यक्षमता है? कोई ActiveX नहीं है, क्योंकि ActiveX केवल आईई (afaik) द्वारा समर्थित है। और यह अवांछित है, अगर मुझे सही याद है, तो उपयोगकर्ता को हमेशा इसके साथ सहमत होना होगा।

मैं हमेशा एक्सएमएल (कोई स्कीमा) या ActiveX से बने सामान की स्वयं की मान्यता प्राप्त नहीं पाया। इसलिए, यदि कोई एक्सएमएल सत्यापन प्लगइन/कार्यक्षमता नहीं है जिसके लिए मैं सिर्फ एक एक्सएमएल और एक्सएसडी पास कर सकता हूं, तो मैं इसे एक त्वरित परिचय देना चाहता हूं कि मैं इसे कैसे करूँगा, इसलिए मैं इसे बेहतर समझ सकता हूं। शायद यह xsd के खिलाफ अपना स्वयं का एक्सएमएल सत्यापन बनाने के लिए बहुत काम है, है ना?

धन्यवाद

+0

** जहां से एक्सएसडी और एक्सएमएल आपकी स्क्रिप्ट पर आता है? – skafandri

+0

मैं मूल प्रश्न का लेखक नहीं हूं, लेकिन मेरे मामले में (जो बक्षीस जोड़ने का कारण था) दोनों को उसी सर्वर पर होस्ट किया जाएगा जो HTML और जावास्क्रिप्ट स्रोत भी प्रदान कर रहा है। – Chris

+0

@ क्रिस, क्या यह ठीक होगा अगर समाधान केवल इंटरनेट एक्सप्लोरर में ही काम करता है? –

उत्तर

3

सर्वश्रेष्ठ उत्तर मैंने पाया अब तक Is there ANY cross-platform way of validating xml against an xsd in javascript?
था लेकिन उस नहीं बहुत संतोषजनक है और लगभग दो वर्ष - तेजी से डेवलपमेंट के लिए उम्र है कि ब्राउज़र की ओर हो रहा है

9

मेरा सुझाव है अजाक्स अनुरोध करने के लिए, सर्वर पर मान्य करें, और जेएस को प्रतिक्रिया दें।

+2

यह जारी रखने के लिए एक अच्छा और वैध कामकाज होगा। लेकिन दुर्भाग्य से ग्राहक पर इसे सत्यापित करने के बारे में सवाल का हल नहीं है। – Chris

+0

अजाक्स के साथ जाएं और इसे सर्वर-साइड मान्य करें। इस बिंदु पर कोई शुद्ध-जेएस समाधान नहीं है - केवल ActiveX का उपयोग करने वाला एक। – c2h5oh

8

मुझे पता है कि आप एक jQuery समाधान पसंद करते हैं, लेकिन ऐसा कुछ है जो इसे जेएस में विकसित किया गया था, और जिस तरह से आप चाहते हैं वैसे ही करता है।

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

इस कड़ी बातचीत के 3 तरीके देता है:

  • (ब्राउज़र के माध्यम से) खींचें और ड्रॉप एक्सएमएल फाइल और फिर मान्य;
  • (ब्राउज़र के माध्यम से) प्रतिलिपि & एक्सएमएल सामग्री को "textareas" में पेस्ट करें और फिर मान्य करें;
  • (आयात/inlcude) जेएस फ़ाइल को अपने वेबएप में जोड़कर और फिर सत्यापित करें (जैसा कि पृष्ठ पर दिखाया गया है)।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^