请不要因为问一个菜鸟问题而攻击我。 无论如何,这就是我正在做的事情 - 我正在研究一个XSLT文件,它与一个名为software的XML文件一起工作。我不打算把整个事情写成一个小样本。有更多的应用程序,然后只有一个。
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="form.xslt"?>
<software
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="form.xstl"
>
<aplication>
<tittle>Libre Office</tittle>
<vendor>Libreoffice.org</vendor>
<category>office suite</category>
<platform>
<software>Windows</software>
<versions>XP sp 2</versions>
<hardware cpu="pentium" ram="256mb"></hardware>
</platform>
<price>0</price>
在样式表中,有一个由上述HTML
填充的下拉菜单<select name="softwareCategory" id="softwareCategory">
<xsl:for-each select="//category[not(.=preceding::*)]">
<option value="{category}">
<xsl:value-of select="."/>
</option>
</xsl:for-each>
</select>
无论如何,我正在研究一个表 - 我正在寻找填充名为selectedCategory的XSL变量的代码,并使用菜单中选择的值填充它。 如果在XSTL中无法做到这一点,我打算使用jquery 感谢您的时间。 我正在改变与最新的jquery无法正常工作的事情
$('softwareCategory').change(function() {
var selectedCategory =$('softwareCategory').find('option:selected').text();
$.get("students.xml",{},function(xml){
// Build an HTML string
myHTMLOutput = '';
myHTMLOutput += '<table width="98%" border="1" cellpadding="0" cellspacing="0">';
myHTMLOutput += '<th>Name</th><th>title</th></th>';
// Run the function for each aplication tag in the XML file
$('apliation',xml).each(function(i) {
title = $(this).find("title").text();
// Build row HTML data and store in string
mydata = buildSoftware(title);
myHTMLOutput = myHTMLOutput + mydata;
});
myHTMLOutput += '</table>'+selectedCategory;
// Update the DIV called aprovedSoftwareTable with the HTML string
$("aprovedSoftwareTable").append(myHTMLOutput);
});
function BuildSoftware () {
output = '';
output += '<tr>';
output += '<td>';
output += '<input type="checkbox" name="value="'+title+'"" value="'+title+'">';
output += '</td>';
output += '<td>';
output += title;
output += '<td>';
output += '</tr>';
return output;
}
});
});