diff options
Diffstat (limited to 'ajax/form_suggestions')
-rw-r--r-- | ajax/form_suggestions/clienthint.js | 45 | ||||
-rw-r--r-- | ajax/form_suggestions/gethint.php | 71 | ||||
-rw-r--r-- | ajax/form_suggestions/index.htm | 14 |
3 files changed, 130 insertions, 0 deletions
diff --git a/ajax/form_suggestions/clienthint.js b/ajax/form_suggestions/clienthint.js new file mode 100644 index 0000000..408c220 --- /dev/null +++ b/ajax/form_suggestions/clienthint.js @@ -0,0 +1,45 @@ +var xmlhttp + +function showHint(str) +{ +if (str.length==0) + { + document.getElementById("txtHint").innerHTML=""; + return; + } +xmlhttp=GetXmlHttpObject(); +if (xmlhttp==null) + { + alert ("Your browser does not support XMLHTTP!"); + return; + } +var url="gethint.php"; +url=url+"?q="+str; +url=url+"&sid="+Math.random(); +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() +{ +if (window.XMLHttpRequest) + { + // code for IE7+, Firefox, Chrome, Opera, Safari + return new XMLHttpRequest(); + } +if (window.ActiveXObject) + { + // code for IE6, IE5 + return new ActiveXObject("Microsoft.XMLHTTP"); + } +return null; +}
\ No newline at end of file diff --git a/ajax/form_suggestions/gethint.php b/ajax/form_suggestions/gethint.php new file mode 100644 index 0000000..8cb7379 --- /dev/null +++ b/ajax/form_suggestions/gethint.php @@ -0,0 +1,71 @@ +<?php +// Fill up array with names +$a[]="Anna"; +$a[]="Brittany"; +$a[]="Cinderella"; +$a[]="Diana"; +$a[]="Eva"; +$a[]="Evan"; +$a[]="Fiona"; +$a[]="Gunda"; +$a[]="Hege"; +$a[]="Inga"; +$a[]="Johanna"; +$a[]="Kitty"; +$a[]="Linda"; +$a[]="Nina"; +$a[]="Ophelia"; +$a[]="Petunia"; +$a[]="Amanda"; +$a[]="Raquel"; +$a[]="Cindy"; +$a[]="Doris"; +$a[]="Eve"; +$a[]="Evita"; +$a[]="Sunniva"; +$a[]="Tove"; +$a[]="Unni"; +$a[]="Violet"; +$a[]="Liza"; +$a[]="Elizabeth"; +$a[]="Ellen"; +$a[]="Wenche"; +$a[]="Vicky"; + +//get the q parameter from URL +$q=$_GET["q"]; + +//lookup all hints from array if length of q>0 +if (strlen($q) > 0) + { + $hint=""; + for($i=0; $i<count($a); $i++) + { + if (strtolower($q)==strtolower(substr($a[$i],0,strlen($q)))) + { + if ($hint=="") + { + $hint=$a[$i]; + } + else + { + $hint=$hint." , ".$a[$i]; + } + } + } + } + +// Set output to "no suggestion" if no hint were found +// or to the correct values +if ($hint == "") + { + $response="no suggestion"; + } +else + { + $response=$hint; + } + +//output the response +echo $response; +?>
\ No newline at end of file diff --git a/ajax/form_suggestions/index.htm b/ajax/form_suggestions/index.htm new file mode 100644 index 0000000..c2fc742 --- /dev/null +++ b/ajax/form_suggestions/index.htm @@ -0,0 +1,14 @@ +<html> +<head> +<script src="clienthint.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>
\ No newline at end of file |