Parse de XML string com xpath em Javascript
5, outubro, 2009
1 comentário
XML simples de clientes com tipo de pessoa. Nesse exemplo vou usar xpath para pegar apenas os clientes do tipo ‘F’
1 2 3 4 5 6 7 8 9 10 11 12 13 | <xml> <clientes> <cliente id="1" tipoPessoa="F"> <nome>Eliezer Rodrigues</nome> </cliente> <cliente id="2" tipoPessoa="J"> <nome>Empresa Abz teste</nome> </cliente> <cliente id="3" tipoPessoa="F"> <nome>Maria da Silva</nome> </cliente> </clientes> </xml> |
Codigo completo, para fazer o teste, cole no firefug e rode:
1 2 3 4 5 6 7 8 9 10 11 12 | var xmlString = "<xml><clientes><cliente id='1' tipoPessoa='F'><nome>Eliezer Rodrigues</nome></cliente><cliente id='2' tipoPessoa='J'><nome>Empresa Abz teste</nome></cliente><cliente id='3' tipoPessoa='F'><nome>Maria da Silva</nome></cliente></clientes></xml>"; var parser=new DOMParser(); var doc = parser.parseFromString(xmlString,"text/xml"); var xpath= "//clientes/cliente[@tipoPessoa = 'F']"; var xmlObject = doc.evaluate( xpath, doc, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null ); var i=0; while ( (entry = xmlObject.snapshotItem(i) ) !=null ){ alert("Nome: "+entry.firstElementChild.textContent); i++; } |
legal neh?
