Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Filipe_Moraes

[Resolvido] Pegar o nome da tag xml com asp

Recommended Posts

Olá pessoal, queria saber o nome da tag do xml, tipo, quero fazer uma função que pega um nome e compara no xml para ver se existe uma tag com aquele nome, tipo:

<%
Function buscaTexto(palavra)
	for i = 0 to rootElement.childNodes.length-1
		if 'aqui preciso saber o nome da tag' = palavra then 
			buscaTexto = rootElement.childNodes(i).text
			exit for
		end if
	next
End Function

buscaTexto("teste")
%>

Ou simplismente passar o nome da tag e a função me devoler o valor dentro dessa tag.

 

Agradecia a ajuda

Compartilhar este post


Link para o post
Compartilhar em outros sites

ola, obrigado pela ajuda mas ainda continuo com um problema, não funciona, tipo, fiz assim:

 

<%
Function buscaTexto(palavra)
	 buscaTexto = objXML.getElementsByTagName(palavra)
End Function

response.write(buscaTexto("teste"))
%>
tenho a tag teste no meu xml, ele não apresenta nenhum problema na estrutura, acontece que eu quero pegar o que esta escrito dentro das tags dando o nome dela, tipo, estou fazendo um site multilinguagens e para não pesar a base de dados com acessos para buscar as palavras, resolvi colocar tudo num xml automaticamante qd se adiciona uma nova palavra, então eu dou o nome da tag de acordo com a palavra, tipo, se tenho "veja mais informações" no xml coloco a tag "veja_mais_informacoes", no site tenho que buscar o que esta escrito dentro dessa tag atraves desse nome, é como se eu criasse um recordSet e fosse buscar pelo nome do campo, tipo RS("veja_mais_informacoes").

 

Acontece que quando faço o response.write(buscaTexto("teste")) me da o seguinte erro:

Wrong number of arguments or invalid property assignment, line 43

LINHA 43 é onde tenho "buscaTexto = objXML.getElementsByTagName(palavra)"

 

Agradecia a ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, ja consegui, fiz da seguinte maneira:

set objXml = Server.CreateObject("Microsoft.XMLDOM")
objXml.async = false
objXml.load(server.MapPath("\xmls\palavras.xml"))
set rootElement  = objXml.documentElement

Function buscaTexto(palavra)
	response.write( rootElement.getElementsByTagName(palavra)(0).text )
End Function

Obrigado pela vossa atenção

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Tek, obrigado pela atenção, mas devo setar a onde? esse codigo abaixo que fiz funcionou, supostamente deveria ter setado alguma coisa para alem do objecto objXml e o rootElement?

 

Obrigado:

set objXml = Server.CreateObject("Microsoft.XMLDOM")
objXml.async = false
objXml.load(server.MapPath("\xmls\palavras.xml"))
set rootElement  = objXml.documentElement

Function buscaTexto(palavra)
	response.write( rootElement.getElementsByTagName(palavra)(0).text )
End Function

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pronto, criei um... de Exemplo, o resto é com você!!

 

<%
 Set obj_XML = Server.CreateObject("Microsoft.XMLDOM")
 Set objLista = Server.CreateObject("Microsoft.XMLDOM")
 obj_XML.async = False
 obj_XML.Load (Server.MapPath("teste.xml"))

 Set objLista = obj_XML.getElementsByTagName("*")

 For i = 0 to (objLista.length-1)

	If objLista.item(i).nodeName = "NOME_TAG" Then
	  response.Write(objLista.item(i).text)
	End If

 Next
 %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.