En ese caso, el único cambio que tienes que hacer consiste en buscar el <select> dentro del menú y no dentro del <li>.
Código Javascript
:
Ver originalvar filtrar = document.getElementById("filter"),
menus = document.getElementsByTagName("ul"),
total = menus.length,
salida = document.getElementById("salida");
filtrar.addEventListener("click", function(){
var dataString = "";
for (i = 0; i < total; i++){
var opciones = menus[i].getElementsByTagName("li"),
select = menus[i].getElementsByTagName("select")[0];
for (j = 0, subTotal = opciones.length; j < subTotal; j++){
var checkbox = opciones[j].getElementsByTagName("input")[0];
if (checkbox.checked)
dataString += dataString.length ? "&" + opciones[j].id + "=" + checkbox.value : opciones[j].id + "=" + checkbox.value;
}
if (select.value > 0)
dataString += dataString.length ? "&" + select.id + "=" + select.value : select.id + "=" + select.value;
}
salida.innerHTML = "Resultado: " + dataString;
}, false);
Como verás, añado los valores de los checkbox y luego el del <select> siempre y cuando se haya seleccionado un valor mayor a cero.
Saludos