Javascript 在XSLT中创建一个简单的模式弹出窗口
我正在构建一个样式表,表中有一些成员。我想要的是,当我单击每个成员时,弹出一个模式窗口,打开该成员的数据,该数据位于XML文件中(我可以使用成员ID作为参考)。我尝试使用fancybox(),但问题是,这些成员是从XML动态填充的,当我单击一个成员时,它会打开一个弹出窗口,其中包含来自其他成员的数据 XMLJavascript 在XSLT中创建一个简单的模式弹出窗口,javascript,jquery,xml,xslt,fancybox,Javascript,Jquery,Xml,Xslt,Fancybox,我正在构建一个样式表,表中有一些成员。我想要的是,当我单击每个成员时,弹出一个模式窗口,打开该成员的数据,该数据位于XML文件中(我可以使用成员ID作为参考)。我尝试使用fancybox(),但问题是,这些成员是从XML动态填充的,当我单击一个成员时,它会打开一个弹出窗口,其中包含来自其他成员的数据 XML <Members> <Member Name = “John Smith” MemberNumber = “JS001” DateofBirth = “09/01/1978
<Members>
<Member Name = “John Smith” MemberNumber = “JS001” DateofBirth = “09/01/1978” Gender = “Male”/>
<Member Name = “Andy Rodrigues” ” MemberNumber = “AR001” DateofBirth = “05/01/1970” Gender = “Male”/>
<Member Name = “Julie Dean” ” MemberNumber = “JD001” DateofBirth = “05/01/1970” Gender = “Male”/>
</Members>
**Stylesheet**
Member Name Member Number
[John Smith][1] JS001
[Andy Rodriguez][1] AR001
[Julie Dean][1] JD001
**Pop-up**
Member John Smith
Date of Birth 09/01/1978
Gender Male
**样式表**
会员名称会员编号
[John Smith][1]JS001
[Andy Rodriguez][1]AR001
[Julie Dean][1]JD001
**弹出**
约翰·史密斯委员
出生日期1978年1月9日
性别男性
样式表上的成员名称是链接,可以打开带有成员信息(如出生日期和性别)的弹出窗口
使用FancyBox的我的代码示例:
<xsl:for-each select="Members/Member">
<tr>
<td>
<div class="indicator bck-belize-hole brd-peter-river">
<xsl:element name="a">
<xsl:attribute name="href">#inline_DTRXMLInfo</xsl:attribute>
<xsl:attribute name="class">various moreinfo whiteicon</xsl:attribute>
<xsl:value-of select="@Name"/>
</xsl:element>
</div>
<xsl:value-of select="@Name"/>
</td>
<td >
<font face="Arial" size="2" color="black">
<b>
<xsl:value-of select="@MemberNumber"/>
</b>
</font>
</td>
</tr>
</xsl:for-each>
<div class="fancynone">
<div id="inline_DTRXMLInfo" class="fancysize">
<xsl:call-template name="DTRXMLInfo">
<xsl:with-param name="Date Of Birth" select="DateofBirth"></xsl:with-param>
</xsl:call-template>
</div>
#内联\u DTRXMLInfo
各种moreinfo白色图标
解决方案:
由于成员是动态添加到样式表中的,因此我们必须为
inline\u DTRXMLInfo提供一个唯一的ID,可以通过将MemberNumber附加到
ID来实现
代码:
#内联DTRXMLInfo_
您的意思是这样的:更像这样:(单击折扣详细信息)固定代码:…新年快乐:)我看到您使用了硬编码的XML,但在我的情况下,我只有一条可以使用的XML路径。像会员/会员[@Name]我不是巫师……我只是想用你提供的一点信息来指导我……如果你想要更具体的方法,你也需要更具体……你的问题对我们大家来说都不清楚
<xsl:attribute name="href">#inline_DTRXMLInfo_<xsl:value-of select="@MemberNumber"/></xsl:attribute>
<div id="inline_DTRXMLInfo_{$MemberNumber}" class="fancysize">
<xsl:call-template name="DTRXMLInfo">
<xsl:with-param name="Date Of Birth" select="DateofBirth"></xsl:with-param>
</xsl:call-template>
</div>