ho quasi risolto il problema da solo

ma ho ancora un piccolo dilemma:

posso i nomi dai select allo scritp così:

codice:
DoDays('select_giorno','select_mese');
questo è lo scritp:

codice:
function DoDays(objGiorni,objMese) 
{
	var a,i;
	var aData;
	var obj=eval("document.f."+objMese);
	var sz;
 	iMese = obj.selectedIndex+5-1;
	obj=eval("document.f."+objGiorni);
	var iDayOriginal=eval(obj.options[obj.selectedIndex].value);
	
	// Annullo oggetto
 	for (i=obj.options.length-1; i>=0;i--) {obj.options[i]=null;}

	for (a=0,i=1;i<32;i++)
	{	
   	var aData = new Date(iAnno,iMese,i);
		if (aData.getMonth()!=iMese) continue; 
		if (arDCheck[aData.getDay()]<'!') continue; 
		obj.options[a]=new Option (i);
		if (i<10) sz="0"+i; else sz=i;
		obj.options[a].value=new String(sz);
		a++;
 	}

 	obj.selectedIndex = idxFind(objGiorni,iDayOriginal);
}

function idxFind(objGiorni,day)
{
	var obj=eval("document.f."+objGiorni);
	var i;
 	for (i=0;i<obj.options.length;i++) 
	{
		if (eval(obj.options[i].value)==day) return i;
	}
	return 0;
}
ma la Web Developer di firefox

mi segnala questo allert:

Avviso: 09 is not a legal ECMA-262 octal constant
su questa riga:

codice:
if (eval(obj.options[i].value)==day) return i;
come mai ?

a cosa è dovuto ?

grazie !