Avatar billede Slettet bruger
13. september 2008 - 10:46 Der er 11 kommentarer og
1 løsning

Autocomplete med Ajax?

Hey eksperter..

jeg har nu fundet en del eksempler på hvordan autocomplete funktioner kan laves i Ajax..

Problemet er at alle dem jeg har fundet er enten med Php eller Asp.net..

og da jeg er til Asp Classic spørger jeg om der er nogen som kender en autocomplete tutorial eller ling. med asp classic ?
Avatar billede roenving Novice
13. september 2008 - 11:31 #1
--  der er vel ikke så stor forskel på din VBscript-kode, javascript-delen er i hvert fald fuldstændig den samme !o]

-- hvis du ikke selv kan klare at konvertere fra VB.Net til VBscript (eller du kun kan finde C#-eksempler !-), kan du prøve at spørge i ASP-kategorien ...
Avatar billede Slettet bruger
13. september 2008 - 16:11 #2
Jamen de eksempler jeg har fundet er faktisk i Php:

http://www.ajaxdaddy.com/mootools-autocomplete.html
Avatar billede roenving Novice
13. september 2008 - 16:14 #3
-- heller ikke det er svært at konvertere, hvis man kan VBscript og har en idé om php, prøv !-)
Avatar billede w13 Novice
13. september 2008 - 16:45 #4
Jeg gætter på, at din PHP-side (som så selvfølgelig skal være ASP), bare skal returnere følgende data:

{"forslag1","forslag2","forslag3","..."};

Vil du ikke også mene det, Roenving?

Og så skal du med ASP sætte Content-Type til application/json, før det virker.
Avatar billede w13 Novice
13. september 2008 - 16:48 #5
Hov, sådan her:

["forslag1","forslag2","..."]

er det vist, mener jeg.
Avatar billede Slettet bruger
13. september 2008 - 17:11 #6
Altså jeg er slet ikke med.. Nej jeg har ikke nogen php-side jeg har en asp side, men det eksempel jeg har fundet er i php - derfor kan jeg ikke bruge det :) ..

fx denne: http://www.ajaxdaddy.com/demo-bsn-autocomplete.html

benytter følgende php..
---------------------------------------------------
   
    $input = strtolower( $_GET['input'] );
    $len = strlen($input);
   
   
    $aResults = array();
   
    if ($len)
    {
        for ($i=0;$i<count($aUsers);$i++)
        {
            // had to use utf_decode, here
            // not necessary if the results are coming from mysql
            //
            if (strtolower(substr(utf8_decode($aUsers[$i]),0,$len)) == $input)
                $aResults[] = array( "id"=>($i+1) ,"value"=>htmlspecialchars($aUsers[$i]), "info"=>htmlspecialchars($aInfo[$i]) );
           
            //if (stripos(utf8_decode($aUsers[$i]), $input) !== false)
            //    $aResults[] = array( "id"=>($i+1) ,"value"=>htmlspecialchars($aUsers[$i]), "info"=>htmlspecialchars($aInfo[$i]) );
        }
    }
   
   
   
   
   
    header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past
    header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // always modified
    header ("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
    header ("Pragma: no-cache"); // HTTP/1.0
   
   
   
    if (isset($_REQUEST['json']))
    {
        header("Content-Type: application/json");
   
        echo "{\"results\": [";
        $arr = array();
        for ($i=0;$i<count($aResults);$i++)
        {
            $arr[] = "{\"id\": \"".$aResults[$i]['id']."\", \"value\": \"".$aResults[$i]['value']."\", \"info\": \"\"}";
        }
        echo implode(", ", $arr);
        echo "]}";
    }
    else
    {
        header("Content-Type: text/xml");

        echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?><results>";
        for ($i=0;$i<count($aResults);$i++)
        {
            echo "<rs id=\"".$aResults[$i]['id']."\" info=\"".$aResults[$i]['info']."\">".$aResults[$i]['value']."</rs>";
        }
        echo "</results>";
    }
?>
Avatar billede w13 Novice
13. september 2008 - 17:24 #7
Som Roenving siger, skal du spørge om konvertering fra PHP til ASP i ASP-kategorien.

Men hvis du kan finde ud af ASP, kan du gøre, som jeg foreslog og lave en ASP-side, der genererer:

{"results":[{"id":"1","value":"forslag1","info":""},{"id":"2","value":"forslag2","info":""}]}

ud fra Querystring'en input, som indeholder brugerens indtastning.
Avatar billede w13 Novice
13. september 2008 - 17:25 #8
Og så skal du med ASP også lige sætte Content-Type til application/json, og det kan du selvfølgelig finde på Google.
Avatar billede roenving Novice
13. september 2008 - 22:37 #9
>>w13 16:45:51

-- jo, principielt ...
Avatar billede w13 Novice
13. september 2008 - 22:58 #10
Den skal så åbenbart ha' det som i 17:24:33..
Avatar billede roenving Novice
13. september 2008 - 23:12 #11
Jaeh, som json er det nok bedst at konstituere det som objekter, så selvfølgelig vil en objekt-kode være nemmest at behandle ...
Avatar billede Slettet bruger
18. august 2009 - 19:04 #12
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester