Altova Mailing List Archives>Archive Index >comp.text.xml Archive Home >Recent entries [Thread Prev] >Thread Next - Re: Search XML Node Search XML NodeTo: NULL Date: 5/3/2005 3:23:00 PM I'm building a guitar website which uses XML and XSLT. http://www.madtim67.com/guitar/index.html You can search either by artist or song. At the moment my XSL page only returns a result if the exact string is entered i.e I have to enter 'baker street' or 'gerry rafferty' in order to get a result. I would appriciate it if anyone could tell me how to modify the code below so that if I enter 'baker' or 'gerry' I would get a result. Heres my XSL page <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html"/> <xsl:param name="text1" /> <xsl:template match="/"> <html> <head> <link rel="stylesheet" type="text/css" href="mystyle.css" /> <title>Results</title> </head> <body> <table class="three" align="center"> <col width="35%" /> <col width="35%" /> <col width="15%" /> <col width="15%" /> <tr> <th class="head">Artist</th> <th class="head">Song</th> <th class="head">Chord</th> <th class="head">Midi</th> </tr> <xsl:for-each select="cat/links"> <xsl:if test="./artist = $text1"> <tr> <td><xsl:apply-templates select="./artist" /></td> <td><xsl:apply-templates select="./song" /></td> <xsl:variable name="link1"><xsl:apply-templates select="./chord" /></xsl:variable> <td><a href="{$link1}" target="_blank">view</a></td> <xsl:variable name="link2"><xsl:apply-templates select="./midi" /></xsl:variable> <td><a href="{$link2}" target="_blank">play</a></td> </tr> </xsl:if> </xsl:for-each> <xsl:for-each select="cat/links"> <xsl:if test="./song = $text1"> <tr> <td><xsl:apply-templates select="./artist" /></td> <td><xsl:apply-templates select="./song" /></td> <xsl:variable name="link1"><xsl:apply-templates select="./chord" /></xsl:variable> <td><a href="{$link1}" target="_blank">view</a></td> <xsl:variable name="link2"><xsl:apply-templates select="./midi" /></xsl:variable> <td><a href="{$link2}" target="_blank">play</a></td> </tr> </xsl:if> </xsl:for-each> </table> <div align="center"> <a href="javascript:history.go(-1)">Click here to return to search page</a> </div> </body> </html> </xsl:template> </xsl:stylesheet> Heres my XML file <cat> <links> <artist>gerry rafferty</artist> <song>baker street</song> <chord>media/gerry_rafferty_-_baker_street.txt</chord> <midi>media/gerry_rafferty_-_baker_street.mid</midi> </links> <links> <artist>men at work</artist> <song>down under</song> <chord>media/men_at_work_-_down_under.txt</chord> <midi>media/men_at_work_-_down_under.mid</midi> </links> <links> <artist>squeeze</artist> <song>up the junction</song> <chord>media/squeeze_-_up_the_junction.txt</chord> <midi>media/squeeze_-_up_the_junction.mid</midi> </links> <links> <artist>steve harley</artist> <song>make me smile</song> <chord>media/steve_harley_-_make_me_smile.txt</chord> <midi>media/steve_harley_-_make_me_smile.mid</midi> </links> </cat> | ||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
