Javascript 简单xml属性值在html文件中使用xslt获取

Javascript 简单xml属性值在html文件中使用xslt获取,javascript,jquery,xml,xslt,xpath,Javascript,Jquery,Xml,Xslt,Xpath,XML文件如下所示:- <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="final.xsl"?> <root> <child1 entity_id = "1" value= "Asia"> <child2 entity_id = "2" value = "india"> <child3 entity_i

XML文件如下所示:-

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="final.xsl"?>  
  <root>
    <child1 entity_id = "1" value= "Asia">
        <child2 entity_id = "2" value = "india">
            <child3 entity_id = "3" value = "Gujarat">
                <child5 entity_id = "5" value ="Rajkot"></child5>
            </child3>
            <child4 entity_id = "4" value = "Rajshthan">
                <child6 entity_id = "6" value = "Ajmer"></child6>
            </child4>
        </child2>
    </child1>
    </root>
我希望这个输出在html文件中,它怎么可能
请帮助我解决此问题

此XSLT将显示与
区域
参数值匹配的项的子项:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="html" encoding="UTF-8"/>
  <xsl:key name="kChild" match="*[@value]" use="../@value"/>

  <xsl:param name="region" select="'india'" />

  <xsl:template match="/">
    <xsl:apply-templates select="key('kChild', $region)" />
  </xsl:template>

  <xsl:template match="*">
    <xsl:value-of select="@value"/>
    <xsl:text>&#xA;</xsl:text>
  </xsl:template>
</xsl:stylesheet>
如果使用值“Asia”,则输出为:

Gujarat
Rajshthan
india 
为了将参数传递到XSLT中,我认为您需要在web页面中使用JavaScript来应用XSLT,而不是自动应用它

下面是一个页面,其中包含一些代码,说明如何在JavaScript中应用XSLT,以及如何向其中传递参数:


亚洲
元素的唯一子元素是
印度
。使用什么逻辑检索古吉拉特邦和拉吉什坦?@jlris使用这个替换,然后输出是Child1:asia Child2:inida Child3:Gujarat Child4:rajshtan现在只需删除asia和inida:)我不知道这意味着什么。为什么它要输出
古吉拉特邦
拉吉斯坦
,而不是
印度
拉吉科特
阿杰梅尔
?这是怎么决定的?我不明白您试图使用的逻辑。@JLRishe亲爱的b'z因为我想点击古吉拉特邦,然后在那里显示它,就像rajkot一样,这就是原因……在您的问题中,您说“我只想要亚洲子元素属性值”。您的意思是说“我只想要子元素属性值”?亚洲唯一的子元素是印度,而不是古吉拉特邦或拉吉什坦。是的,现在这个输出如何显示在html文件中?你基本上会在我链接的页面中使用JavaScript。您的页面中是否有要添加结果的特定HTML元素?您能提供XML文件的文件名吗?所选值来自何处?
Gujarat
Rajshthan
india