Я разместил это на досках Fogbugz, но я надеялся на более быстрый ответ.
Приведенный ниже сценарий делает то, что я хочу, за исключением того, что вам нужно изменить поле ixproject (вероятно, потому что в других моих проектах не используется подкатегория), чтобы раскрывающиеся списки обновлялись новыми значениями. Есть ли способ обновить определенные элементы html после изменения их значений.
$(document).ready(function(){
var categoryChanged = $('#ixCategory');
var reloadProject = $('#ixProject');
// We don't need Schedule Item so remove it. From our options.
var removeScheduleItem = document.getElementById("ixCategory");
var select = document.getElementById("subcategorya85");
//Remove all options that may exist.
function resetSelectBox(){
var select = document.getElementById("subcategorya85");
select.options.length = 0;
}
//Remove all options before starting.
$(document).ready(function() {
resetSelectBox();
select.options[0] = new Option("--");
//removes schedule item from ixcategory
removeScheduleItem.remove(3);
});
categoryChanged.on("change", function(event){
if (($('#ixCategory')[0].selectedIndex == 0))
{
resetSelectBox();
select.options[0] = new Option("A", "A");
select.options[1] = new Option("B", "B");
select.options[2] = new Option("C", "C");
}
else
if (($('#ixCategory')[0].selectedIndex == 1))
{
resetSelectBox();
select.options[0] = new Option("D", "D");
select.options[1] = new Option("E", "E");
}else
if (($('#ixCategory')[0].selectedIndex == 2))
{
resetSelectBox();
select.options[0] = new Option("F", "F");
}else
if (($('#ixCategory')[0].selectedIndex == 3))
{
resetSelectBox();
select.options[0] = new Option("G", "G");
}
})
});
РЕДАКТИРОВАТЬ: я скопировал тот же скрипт в Fiddle и получил желаемый результат. http://jsfiddle.net/themaniac27/VNfFH/
Что мне нужно сделать по-другому, чтобы заставить это работать в Fogbugz. Это было предпринято с использованием пробной версии тумана по требованию.