Нашёл ошибку программеров в коде.
Вот функция, которая должна "подсвечивать серым" режим MDIX для оптических портов.
Код:
function CheckPortNum(s)
{
var tmp1=s.elements[0].selectedIndex + 1;
var tmp2=s.elements[1].selectedIndex + 1;
//alert("tmp1==" + tmp1);
//alert("tmp2==" + tmp2);
var ss,i,j;
ss =fiberportlsit.split(",");
//alert(ss.length);
for(i= 0;i< ss.length;i++)
{
if(tmp1 == ss[i])
{ for(j =0;j< ss.length;j++)
{
if (tmp2 == ss[j])
{
//alert(" find port!");
s.elements[4].disabled = true;
s.mdixflag.value = 0;
break;
}
else
{
s.elements[4].disabled = false;
s.mdixflag.value = 1;
}
}
//alert(" not find port!");
break;
}
else
{//alert(" not find port!");
s.elements[4].disabled = false;
s.mdixflag.value = 1;
}
}
}
Ту всё нормально.
Вот только для 3026, на котором установлено 2 модуля с оптическими портами, - массив оптических портов задаётся так:
Код:
var fiberportlsit = "26,";
Видимо, где-то в прошивке очепятка вкралась и список оптических портов веб-интерфейс получает неполный.
То бишь для 26го порта всё работает, а вот для 25го - вылетает с той же ошибкой.
У 3010 - с этим всё нормально, список портов задаётся
Код:
var fiberportlsit = "10,";
и отрабатывается без проблем.