我可以翻译中文。下面是您需要翻译的内容:
XML
当我从项目中选择一个选项时,它应该根据xml文件中定义的任务加载一组任务选项。例如,如果我点击“项目2”,它应该在任务选项中加载任务4和任务5。如果我删除selectpicker,这确实可以工作,但是否有办法同时保留selectpicker并完成此操作呢?
感谢您的帮助。
我试图动态更改使用bootstrap selectpicker的选择选项,但似乎无法与bootstrap一起使用,但没有它,它运行正常。
这是我的代码:
HTML
<select name="proj" id="project" class="selectBox" style="width:270px" data-size="5" onchange="tasklist()">
<option>Select Project...</option>
</select>
<select name="tsk" class="selectBox" id="task" style="width:270px" data-size="5">
<option>Select Task...</option>
</select>
JavaScript
$(document).ready(function() {
$('.selectBox').selectpicker();
});
if (window.XMLHttpRequest)
xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET","projectList.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var project=xmlDoc.getElementsByTagName("project");
for (var i=0;i<project.length;i++)
{
$('#project').append($('<option>', {
value: i+"|" + project[i].getElementsByTagName("title")[0].childNodes[0].nodeValue,
text:project[i].getElementsByTagName("title")[0].childNodes[0].nodeValue
}));
}
function tasklist()
{
$('#task').empty();
if (window.XMLHttpRequest)
xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET","projectList.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var project=xmlDoc.getElementsByTagName("project");
var x=document.getElementById("project").options.selectedIndex;
for(var j=0;j<project[x-1].getElementsByTagName("task").length;j++)
{
$('#task').append($('<option>', {
value: j+"|" + project[x-1].getElementsByTagName("task")[j].childNodes[0].nodeValue,
text:project[x].getElementsByTagName("task")[j].childNodes[0].nodeValue
}));
}
}
XML
<projectlist>
<project>
<title>Project 1</title>
<task>task 1</task>
<task>task 2</task>
<task>task 3</task>
</project>
<project>
<title>Project 2</title>
<task>task 4</task>
<task>task 5</task>
</project>
<project>
<title>Project 3</title>
<task>task 6</task>
<task>task 7</task>
</project>
</projectlist>
当我从项目中选择一个选项时,它应该根据xml文件中定义的任务加载一组任务选项。例如,如果我点击“项目2”,它应该在任务选项中加载任务4和任务5。如果我删除selectpicker,这确实可以工作,但是否有办法同时保留selectpicker并完成此操作呢?
感谢您的帮助。