<HTML>
<HEAD>
<!-- Original: Rafael Avaria G--->
<!-- email: rafa_avaria@hotmail.com-->
<!-- http://www.lawebdelprogramador.com -->
<script language="javascript">
<!-- Beguin
// only change the text in the array for anythin that you want, dont' worry por the opion "Other" this automatly appears at the end list.
var sistem1Array = new Array("('Escoje una Opcion','',true,true)",
"('sistema 1.1','sistema 1.1')",
"('sistema 1.2','sistema 1.2')",
"('sistema 1.3','sistema 1.3')",
"('sistema 1.4','sistema 1.4')");
var sistem2Array = new Array("('Escoje una Opcion','',true,true)",
"('sistema 2.1','sistema 2.1')",
"('sistema 2.2','sistema 2.2')",
"('sistema 2.3','sistema 2.3')",
"('sistema 2.4','sistema 2.4')");
function checkbrowser(){
if (navigator.appName == 'Netscape'){
// if you deal with layers, you will to need change document.form for something like this document.form.document.layername this valid only for nestcape 4, i dont tested in netsacpe 6
if (parseInt(navigator.appVersion) >= 4){
inForm = document.form;
selected = document.form.sistem.options[document.form.sistem.selectedIndex].value;
changesistem()
}
}
else {
if (parseInt(navigator.appVersion) >= 4){
inForm = document.form;
selected = document.form.sistem.options[document.form.sistem.selectedIndex].value;
changesistem();
}
}
}
function validate(num){
var x=0;
for( var i = 1; i <= num.length; i++){
for( var j = 0; j <= 9;j++){
if ( num.charAt(i-1) == j ){x++;}
else if (num.charAt(i-1) == '.'){x++;}
}
}
if (x == 0){num = '-1';}
return num;
}
function changesistem(){
if (selected == 'sistem1' || selected == 'sistem2'){
var selectedArray = eval(selected + "Array");
for (var i=0; i <= inForm.sistem.length; i++){
inForm.sistem.options[i] = null;
}
if (inForm.sistem.options[0].value != null){
inForm.sistem.options[0] = null;
}
for (var i=0; i < selectedArray.length; i++) {
eval("inForm.sistem.options[i]="+ "new Option"+ selectedArray[i]);
if (inForm.sistem.options[i].value == null){
inForm.sistem.options[i].value = inForm.sistem.options[i].txt;
}
}
inForm.sistem.options[inForm.sistem.length]=new Option('Otro','Otro');
}
if ( selected == 'Otro'){
var newsize = null;
while (newsize == null) {
var newsize = prompt("Escoje el numero de sistema","");
if (newsize == ""){
alert("No hay datos ");
break;
}
}
if (validate(newsize) != -1 ) {
newsize = "sistem "+newsize;
inForm.sistem.options[inForm.sistem.length-1] = new Option(newsize,newsize,true,true);
inForm.sistem.options[inForm.sistem.length] = new Option('Other','Other');
}
else if (validate(newsize) == -1){
alert("Entrada de datos no valida");
selected = inForm.sistem.options[inForm.sistem.length-1].value
}
else {
inForm.sistem.options[inForm.sistem.length-1]= new Option('no encontrado en la lista','no escojio una alternativa valida',true,true);
}
}
}
//End-->
</script>
</HEAD>
<BODY>
<BR>
<BR>
<FORM name="form">
<CENTER>
<FONT SIZE="-2" face="Arial, Helvetica, sans-serif"><B>sistemas: </B></FONT>
<SELECT NAME="sistem" onchange="javascript:checkbrowser()">
<option selected></option>
<option value="sistem1"><FONT SIZE="-2" face="Arial, Helvetica, sans-serif">Sistema uno </option>
<option value="sistem2"><FONT SIZE="-2" face="Arial, Helvetica, sans-serif">Sistema dos</option>
</SELECT>
</FORM>
</BODY>
</HTML>