我发现了一个问题,在分析XML
文件问题在解析XML
这是XML文件(如字符串)的样本:
<ns:fetchXmlResponse xmlns:ns=\ " http:/ws.src.com \>
<ns:return>
<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>
<TemplateData>
<TemplatePrescriptionData>
<id>24</id>
<noOfRefills>1</noOfRefills>
<templateId>67</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Norco</prescriptionName>
<prescriptionStrength>5/325</prescriptionStrength>
<prescriptionUnit>mg</prescriptionUnit>
<prescriptionForm>Tablet(s)</prescriptionForm>
<prescriptionSignature>1-2tabs po q4-6 hours, prn
</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>15</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>25</id>
<noOfRefills>2</noOfRefills>
<templateId>67</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Motrin
</prescriptionName>
<prescriptionStrength>600</prescriptionStrength>
<prescriptionUnit>mg</prescriptionUnit>
<prescriptionForm>Tablet(s)</prescriptionForm>
<prescriptionSignature>1tab po q6 hours,
</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>28</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>26</id>
<noOfRefills>2</noOfRefills>
<templateId>67</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Chlorhexidine</prescriptionName>
<prescriptionStrength>0.12</prescriptionStrength>
<prescriptionUnit>%</prescriptionUnit>
<prescriptionForm>Mouth
</prescriptionForm>
<prescriptionSignature>rinse mouth bid
</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>1</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>28</id>
<noOfRefills>1</noOfRefills>
<templateId>76</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Norco</prescriptionName>
<prescriptionStrength>5/325</prescriptionStrength>
<prescriptionUnit>mg</prescriptionUnit>
<prescriptionForm>Tablet(s)</prescriptionForm>
<prescriptionSignature>1-2tabs po q4-6 hours, prn
</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>15</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>30</id>
<noOfRefills>2</noOfRefills>
<templateId>76</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Motrin
</prescriptionName>
<prescriptionStrength>600</prescriptionStrength>
<prescriptionUnit>mg</prescriptionUnit>
<prescriptionForm>Tablet(s)</prescriptionForm>
<prescriptionSignature>1tab po q6 hours,prn
</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>28</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>31</id>
<noOfRefills>2</noOfRefills>
<templateId>76</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Chlorhexidine</prescriptionName>
<prescriptionStrength>0.12</prescriptionStrength>
<prescriptionUnit>%</prescriptionUnit>
<prescriptionForm>MouthRinse
</prescriptionForm>
<prescriptionSignature>rinse mouth bid(withexpectoration)
</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>1</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>32</id>
<noOfRefills>1</noOfRefills>
<templateId>79</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Norco</prescriptionName>
<prescriptionStrength>5/325</prescriptionStrength>
<prescriptionUnit>mg</prescriptionUnit>
<prescriptionForm>Tablet(s)</prescriptionForm>
<prescriptionSignature>1-2tabs po q4-6 hours, prn</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>15</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>33</id>
<noOfRefills>2</noOfRefills>
<templateId>79</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Motrin
</prescriptionName>
<prescriptionStrength>600</prescriptionStrength>
<prescriptionUnit>mg</prescriptionUnit>
<prescriptionForm>Tablet(s)</prescriptionForm>
<prescriptionSignature>1tab po q6 hours,prn</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>28</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
</TemplateData>
</ns:return>
</ns:fetchXmlResponse>
代码:
var xmlDoc=loadXMLString(Above XML file);
//Then i'm fetching "ns:return" node(Which is also an XML file)
var returnNode = String(xmlDoc.getElementsByTagName("ns:return")[0].childNodes[0].nodeValue);
loadXMLString funciton
function loadXMLString(txt)
{
if (window.DOMParser)
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(txt,"text/xml");
}
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.loadXML(txt);
}
现在的问题是returnNode
变量是有整体XMLFILE的只是4048
字符inspite
样品:
<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>
<TemplateData>
<TemplatePrescriptionData>
<id>24</id>
<noOfRefills>1</noOfRefills>
<templateId>67</templateId>
<templatePrescriptionMaintainanceId>0</templatePrescriptionMaintainanceId>
<prescriptionName>Norco</prescriptionName>
<prescriptionStrength>5/325</prescriptionStrength>
<prescriptionUnit>mg</prescriptionUnit>
<prescriptionForm>Tablet(s)</prescriptionForm>
<prescriptionSignature>1-2 tabs po q4-6 hours, prn
</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>15</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>25</id>
<noOfRefills>2</noOfRefills>
<templateId>67</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Motrin </prescriptionName>
<prescriptionStrength>600</prescriptionStrength>
<prescriptionUnit>mg</prescriptionUnit>
<prescriptionForm>Tablet(s)</prescriptionForm>
<prescriptionSignature>1 tab po q6 hours, prn</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>28</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>26</id>
<noOfRefills>2</noOfRefills>
<templateId>67</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Chlorhexidine</prescriptionName>
<prescriptionStrength>0.12</prescriptionStrength>
<prescriptionUnit>%</prescriptionUnit>
<prescriptionForm>Mouth Rinse</prescriptionForm>
<prescriptionSignature>rinse mouth bid (with expectoration)
</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>1</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>28</id>
<noOfRefills>1</noOfRefills>
<templateId>76</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Norco</prescriptionName>
<prescriptionStrength>5/325</prescriptionStrength>
<prescriptionUnit>mg</prescriptionUnit>
<prescriptionForm>Tablet(s)</prescriptionForm>
<prescriptionSignature>1-2 tabs po q4-6 hours, prn
</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>15</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>30</id>
<noOfRefills>2</noOfRefills>
<templateId>76</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Motrin </prescriptionName>
<prescriptionStrength>600</prescriptionStrength>
<prescriptionUnit>mg</prescriptionUnit>
<prescriptionForm>Tablet(s)</prescriptionForm>
<prescriptionSignature>1 tab po q6 hours, prn</prescriptionSignature>
<prescriptionWarnings></prescriptionWarnings>
<prescriptionComments></prescriptionComments>
<prescriptionQuantity>28</prescriptionQuantity>
<statusCode>true</statusCode>
<createDate>2009-07-22T00:00:00+05:30</createDate>
<updateDate>2009-07-22T00:00:00+05:30</updateDate>
</TemplatePrescriptionData>
<TemplatePrescriptionData>
<id>31</id>
<noOfRefills>2</noOfRefills>
<templateId>76</templateId>
<templatePrescriptionMaintainanceId>0
</templatePrescriptionMaintainanceId>
<prescriptionName>Chlorhexidine</prescriptionName>
<prescriptionStrength>0.12</prescriptionStrength>
<prescriptionUnit>%</prescriptionUnit>
<prescriptionForm>Mouth Rinse</prescriptionForm>
<prescriptionSignature>rinse mouth bid (with expectoration)
</pr
注:我曾尝试与jQuery
但首先它验证数据并抛出Invalid XML
例外。
我也验证过这个文件,它在我的文件中显示"The processing instruction target matching "[xX][mM][lL]" is not allowed."
。
任何人都可以帮助我解决这个问题,或者你可以建议我一些棘手的方式来处理这种类型的XML文件? XML中
尝试使用jQuery http://tech.pro/tutorial/877/xml-parsing-with-jquery –
@VinodLouis没有好友jQuery是禁止解析,这就是为什么问题是在这里 – Jaykishan
“禁止”是强大的工作......它有什么问题? – ChrisW