Всем привет.
Создал функцию:
function readf () {
var strsplit1=pr1.value+" "+pr2.value+" "+pr3.value+" "+bet.value+" "+und.value+" "+ovr.value+" "+prg.value;
var tmp2;
var tmp3;
var rf1=[];
var rf=[];
var fr=[];
var i=0;
var k=0;
var r=0;
fso = new ActiveXObject("Scripting.FileSystemObject");
var f1 = "..//sp.txt";
var f2 = "..//itg.txt";
if (fso.FileExists(f1) && fso.FileExists(f2)) {
tmp2 = fso.OpenTextFile(f1, 1, true);
do {
rf[i]=tmp2.Readline();
i++;
}
while (!tmp2.atendofStream);
tmp2.Close();
tmp3 = fso.OpenTextFile(f2, 1, true);
do {
rf1[k]=tmp3.Readline();
k++;
}
while (!tmp3.atendofStream);
tmp3.Close();
do {
if(rf[r]==strsplit1){
fr[r]=rf[r]+" "+rf1[r];
r++;
}
else{
r++;
}
}
while(r == rf.length);
for (var d=0;d<fr.length;d++){
document.writeln(fr[d]+"<br>");
}
}
else {
alert("Не найден Файл с данными");
}
}
Функция открывает файлы, копирует данные по-строчно в массивы, затем проходит по массиву первого файла (sp.txt) и сравнивает с введенными данными в форму, если есть совпадение - записывает в другой массив, который потом и выводится.
Все работает, кроме вот этой части:
do {
if(rf[r]==strsplit1){
fr[r]=rf[r]+" "+rf1[r];
r++;
}
else{
r++;
}
}
while(r == rf.length);
Условие в конце цикла - не выполняеться. В общем эта часть и не работает. Долго над этим бился - так и не понял что тут не так!?
Помогите пожалуйста разобраться с этим циклом?!
Заранее благодарен.