Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Очень нужна помощь / 9 сообщений из 9, страница 1 из 1
01.04.2010, 19:17:06
    #36556454
NIK KESSADI
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень нужна помощь
Никак не могу исправить 2 ошибки в файле js в строке №5 и №18. Помогите пожалуйста исправить
Вот мой код:
файл-chint.js

var xmlHttp=null;
function showHint(str)
{
if(str.length==0)
{document.getElementByld("txtHint").innerHTML="fint.html";
return;
}
xmlHttp=GetXmlHttpObject();
if(xmlHttp==null)
{
alert("Your browser does not support AJAX!")
return;
}
var url="ghint.php"
url=url+"?q="+str;
url=url+"&sid="+Math.random();
alert(url);
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function GetXmlHttpObject()
{
var xmlHttp=null;
if(window.XMLHttpRequest){
xmlHttp=new XMLHttpRequest();
}else{

try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP")
}
catch(e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;}


Файл-fint.html

<html>
<head>
<script src="chint.js"></script>
</head>
<body>
<form>
First Name:
<input type="text"id="txt1" onkeyup="showHint(this.value)">
</form>
<p>Suggestions:<span id="txtHint"></span></p>
</body>
</html>

Файл-ghint.php

<?php
header("Cache-Control: no-cache, must-revalidate");

header("Expires: Mon, 1 Sep 2009 07:30:00 GMT");

$a[]="Audi";
$a[]="BMW";
$a[]="Buick";
$a[]="Chevrolet";
$a[]="Citroen";
$a[]="Dodge";
$a[]="Ferrari";
$a[]="Fiat";
$a[]="Ford";
$a[]="Honda";
$a[]="Hyundai";
$a[]="Cherokee";
$a[]="Cherry";
$a[]="Lada";
$a[]="Lamborghini";
$a[]="Lincoln";
$a[]="Mazda";
$a[]="Mercedes";
$a[]="Mitsubishi";
$a[]="Nissan";
$a[]="Opel";
$a[]="Peugeot";
$a[]="Plymoth";
$a[]="Pontiac";
$a[]="Renault";
$a[]="Rover";
$a[]="Saab";
$a[]="Subaru";
$a[]="Suzuki";
$a[]="Toyota";
$a[]="Volkswagen";
$a[]="Volvo";

$q = $_GET["q"];

if (strlen($q) > 0)
{
$hint = "chint.js";
for($i = 0; $i<count($a); $i++)
{
if (strtolower($q) == strtolower(substr($a[$i],0,strlen($q))))
{
if ($hint == "chint.js")
{
$hint=$a[$i];
}
else
{
$hint=$hint." , ".$a[$i];
}
}
}
}

if ($hint == "chint.js")
{
$response = "no suggestion";
}
else
{
$response = $hint;
}

echo $response;
?>
...
Рейтинг: 0 / 0
01.04.2010, 21:01:49
    #36556627
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень нужна помощь
В пятой строке всё просто там в getElementById написана строчная "L" вместо заглавной "I".
А вот откуда взялась stateChanged в 19 строке - сие нам не понятно. Там вроде как должна быть функция, а не переменная. К тому же, эта функция должна быть где то определена. Посмотрите внимательно, в инете гора примеров с этой строкой.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
01.04.2010, 23:25:59
    #36556741
NIK KESSAD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень нужна помощь
vkle не много не то скинул вот нужный, посмотри если не трудно:

файл-chint.js

var xmlHttp=null;
function showHint(str)
{
if(str.length==0)
{document.getElementById("txtHint").innerHTML="fint.html";
return;
}
xmlHttp=GetXmlHttpObject();
if(xmlHttp==null)
{
alert("Your browser does not support AJAX!")
return;
}
var url="ghint.php"
url=url+"?q="+str;
url=url+"&sid="+Math.random();
alert(url);
xmlHttp.onreadyStateChange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function stateChanged()
{
if(xmlHttp.readyState==4)
{
document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
if(window.XMLHttpRequest){
xmlHttp=new XMLHttpRequest();
}else{

try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP")
}
catch(e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;}
...
Рейтинг: 0 / 0
01.04.2010, 23:29:48
    #36556745
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень нужна помощь
NIK KESSAD,

Берите пожалуйста код в тэги SRC.
...
Рейтинг: 0 / 0
01.04.2010, 23:44:55
    #36556753
NIK KESSADI
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень нужна помощь
Всё отредактировал:

файл-chint.js

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
var xmlHttp=null;
function showHint(str)
{
if(str.length== 0 )
{document.getElementById("txtHint").innerHTML="fint.html";
return;
}
xmlHttp=GetXmlHttpObject();
if(xmlHttp==null)
{
alert("Your browser does not support AJAX!")
return;
}
var url="ghint.php"
url=url+"?q="+str;
url=url+"&sid="+Math.random();
alert(url);
xmlHttp.onreadyStateChange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function stateChanged()
{
if(xmlHttp.readyState== 4 )
{
document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
if(window.XMLHttpRequest){
xmlHttp=new XMLHttpRequest();
}else{

try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP")
}
catch(e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;}
...
Рейтинг: 0 / 0
02.04.2010, 00:11:34
    #36556780
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень нужна помощь
Ну хотя бы, когда копипастите с рабочих примеров, не исправляйте правильное на неправильное.
В оригинале onreadystatechange, у Вас onreadyStateChange. Найдите два отличия.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
02.04.2010, 00:21:35
    #36556788
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень нужна помощь
В принципе, функцию можно определить сразу
Код: plaintext
1.
2.
3.
    xmlHttp.onreadystatechange = function () {
        if(this.readyState== 4 )
            document.getElementById("txtHint").innerHTML = this.responseText;
    };

ПХПшный код тож можно попроще
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
.....................
$a[]="Volvo";

$q = strtolower($_GET["q"]);
$len = strlen($q);
$hint = array();
if (strlen($q) >  0 )
    foreach ($a as $el)
        if ($q == strtolower(substr($el,  0 , $len)))
            $hint[] = $el;

echo count($hint) ? implode(', ', $hint) : "no suggestion";
?>
Хотя, при значительном количестве элементов массива это тоже не лучший вариант.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
02.04.2010, 00:26:55
    #36556790
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень нужна помощь
Или, даже так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
..........
$a[]="Volvo";

$q = strtolower($_GET["q"]);
$hint = array();
if ($len = strlen($q))
    foreach ($a as $el)
        if ($q == strtolower(substr($el,  0 , $len)))
            $hint[] = $el;

echo count($hint) ? implode(', ', $hint) : "no suggestion";
?>

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
02.04.2010, 01:11:50
    #36556820
NIK KESSADI
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень нужна помощь
vkle большое спасибо за помощь, но имелось ввиду создание выпадающего списка как например на сайте google...
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Очень нужна помощь / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]