Показать сообщение отдельно
  #1 (permalink)  
Старый 15.11.2008, 19:28
Интересующийся
Отправить личное сообщение для sp3d Посмотреть профиль Найти все сообщения от sp3d
 
Регистрация: 02.11.2008
Сообщений: 13

скрипт не отоброжает данные в диве
Здравствуйте!
Дело вот в чем:
При нажатии на кнопку происходит следующие;
Если результат поиска =0, то отоброжается информация,
если же результат имеется, то ничего не отоброжает
функция search работает, а show нет
Только начинаю изучать JavaScript, многое непонятно
Уважаемые форумчане, покажите ошибку в коде.

javascript:
<HEAD>
<SCRIPT LANGUAGE="">
<!-- Begin
var item = new Array();
// "имя файла","путь","Название Страницы","Много,Ключевых,Слов","Описание страницы"
c=0; item[c]=new Array("index.html","","Стартовая страница","index,основная,0,стартовая","Демонстрация поискового механизма для сайта.");
c++; item[c]=new Array("about.htm","","Обо мне","об,автор,контакты,email,кто","Контактная информация с автором страницы.");
c++; item[c]=new Array("links.htm","","Ссылки","ссылки,больше,где,похожее,друзья","Ссылки на сайты.");
c++; item[c]=new Array("main.htm","main/","Основная страница","содержание,основная,фокус","Основная страница сайта.");
c++; item[c]=new Array("logo.jpg","main/images/","Значок","ссылка,рисунок,картинка,графика","Картинка.");

function search(frm) {
txt = frm.srchval.value.split(" ");
fnd = new Array(); total=0;
for (i = 0; i < item.length; i++) {
fnd[i] = 0; order = new Array(0, 4, 2, 3);
for (j = 0; j < order.length; j++)
for (k = 0; k < txt.length; k++)
if (item[i][order[j]].toLowerCase().indexOf(txt[k]) > -1 && txt[k] != "")
fnd[i] += (j+1);
}
for (i = 0; i < fnd.length; i++) {
n = 0; w = -1;
for (j = 0;j < fnd.length; j++)
if (fnd[j] > n) { n = fnd[j]; w = j; };
if (w > -1) total += show(w, win, n);
fnd[w] = 0;
}
document.getElementById('sub').innerHTML="</table><br>Всего найдено: "+total+"<br>";
}
function show(which,wind,num) {
link = item[which][1] + item[which][0];
link = item[which][1] + item[which][0];
line="<tr><td><a href='"+link+"'>"+item[which][2]+"</a> Совпадений: "+num+"<br>";
line += item[which][4] + "<br>"+link+"</td></tr>";
document.getElementById('sub').innerHTML=line;
return 1;
}
//  End -->
</script>
</HEAD>


htm:
<BODY>
<center>
<form method=get action="javascript:void(0)" onSubmit="search(this); return false;">
<tr><td><input name=srchval type=text value="0" size="45">
<input type=submit value="Поиск">
</td></tr>
</form>
</center>
<div id="sub" style="background:#00CCFF; width:600px; height:500px;">
</div>
</BODY>

Последний раз редактировалось sp3d, 15.11.2008 в 19:31. Причина: неверно оформил код htm
Ответить с цитированием