guarda se può servire :master:

codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Pagina senza titolo</title>
<script language="javascript" type="text/javascript">
// <!CDATA[

function Button1_onclick() 
{
    var a = getElements(null, "select", "select-one");
    var s = "";
    for(var i = 0; i < a.length; i++)
    {
        var v = a[i];
        s += "tagName = " + v.tagName + ", type = " + v.type + ", id = " + v.id + "\n";
    }
    alert(s);
}

function Button2_onclick() 
{
    var a = getElements("div1", "select", "select-one");
    var s = "";
    for(var i = 0; i < a.length; i++)
    {
        var v = a[i];
        s += "tagName = " + v.tagName + ", type = " + v.type + ", id = " + v.id + "\n";
    }
    alert(s);
}

/*--------------------------------------------------------------------------
trova gli elementi che soddisfano il criterio in un vettore:
source:		contenitore o id contenitore. se null = body
tagName:	se null = "*"
type:		se null non ne tengo conto
idSearch:	se valorizzato, tutti gli elementi con id che inizia con idSearch
flagSeach:  se valorizzato, 1 -> id inizia per idSearch
                            2 -> id contiene idSearch
                            3 -> id termina con idSearch
----------------------------------------------------------------------------*/
function getElements(source, tagName, type, idSearch, flagSeach)
{
	var v = [];
	
	var result = getTypeParameter(source);
	if(result == 0)
		source = document.body;
	else if(result == 2)
		source = document.getElementById(source);
	else if(result == 4)
		source = source;
	else
		return v;

	tagName = (tagName == undefined)? "*" : tagName;
	type = (type == undefined)? "" : type;
	idSearch = (idSearch == undefined)? "" : idSearch;
	flagSeach = (flagSeach == undefined)? 1 : flagSeach;
	
	var elementi = source.getElementsByTagName(tagName);
	var n = elementi.length;
	for(var i = 0; i < n; i++)
	{
		var elemento = elementi[i];
		if( (elemento.type != undefined && elemento.type.toLowerCase() == type.toLowerCase() ) || (type == "") )
		{
			if( (elemento.id != undefined) && ( ((flagSeach == 1 && elemento.id.indexOf(idSearch, 0) == 0) || idSearch == "") || ((flagSeach == 2 && elemento.id.indexOf(idSearch, 0) >= 0) || idSearch == "") || ((flagSeach == 3 && elemento.id.indexOf(idSearch, 0) == (elemento.id.length - idSearch.length) ) || idSearch == "") )  )
			{
				v[v.length] = elemento;
			}
		}
	}
	
	return v;


}


/*----------------------------------------------------------
Restituisce il tipo di parametro ricevuto
0 -> indefinito
1 -> funzione
2 -> id oggetto che supporta innerHTML
3 -> id oggetto che supporta value
4 -> oggetto che supporta innerHTML
5 -> oggetto che supporta value
6 -> vettore
-----------------------------------------------------------*/
function getTypeParameter(v)
{
	if(typeof(v) == "undefined")
	{
		//alert("undefined");
		return 0;
	}
	else if(typeof(v) == "function")
	{
		//alert("funzione");
		return 1;
	}
	else if(typeof(v) == "string")
	{
		if(document.getElementById(v) != undefined)
		{
			if(document.getElementById(v).value != undefined)
			{
				//alert(" id value");
				return 3;
			}
			else if(document.getElementById(v).innerHTML != undefined)
			{
				//alert("id innerHTML");
				return 2;
			}
		}
		else return 0;
		

	}
	
	else if(typeof(v) == "object")
	{
		if(v == null)
		{
			//alert("null");
			return 0;
		}
		else
		{
			if(v.length != undefined)
			{
				//alert("vettore");
				return 6;
			}
			else
			{
				if(v.value != undefined)
				{
					//alert(" oggetto value");
					return 5;
				}
				else if(v.innerHTML != undefined)
				{
					//alert("oggetto innerHTML");
					return 4;
				}
				
			}
		}
	}
	//indefinito o altro
	return 0;
	
}
// ]]>
</script>
</head>
<body>
    <select id="Select1"><option></option></select>
    <select id="Select2"><option></option></select>
    <div id="div1">
        <select id="Select3"><option></option></select>
        <select id="Select4" multiple="multiple"><option></option></select>
    </div>
    <input id="Button1" type="button" value="Tutti i DropDown" onclick="return Button1_onclick()" />
    <input id="Button2" type="button" value="Solo i DropDown di div1" onclick="return Button2_onclick()" />
</body>
</html>