Introduction:
We can easily create autocomplete textbox using some set array values.Lot of free libraries are available for autocomplete textbox,
Main:
See this below examble,I tried auto complete for some text in no’s 1-10.
<script type=”text/javascript”>
var isOpera = navigator.userAgent.indexOf(“Opera”) > -1;
var isIE = navigator.userAgent.indexOf(“MSIE”) > 1 && !isOpera;
var isMoz = navigator.userAgent.indexOf(“Mozilla/5.”) == 0 && !isOpera;
function MainTextBox (MainTextBox, iStart, iEnd) {
switch(arguments.length) {
case 1:
MainTextBox.select();
break;
case 2:
iEnd = MainTextBox.value.length;
case 3:
if (isIE) {
var MainTextBoxRange = MainTextBox.createTextRange();
MainTextBoxRange.moveStart(“character”, iStart);
MainTextBoxRange.moveEnd(“character”, -MainTextBox.value.length + iEnd);
MainTextBoxRange.select();
} else if (isMoz){
MainTextBox.setSelectionRange(iStart, iEnd);
}
}
MainTextBox.focus();
}
function AutoReplace (MainTextBox, sText) {
if (isIE) {
var MainTextBoxRange = document.selection.createRange();
MainTextBoxRange.text = sText;
MainTextBoxRange.collapse(true);
MainTextBoxRange.select();
} else if (isMoz) {
var iStart = MainTextBox.selectionStart;
MainTextBox.value = MainTextBox.value.substring(0, iStart) + sText + MainTextBox.value.substring(MainTextBox.selectionEnd, MainTextBox.value.length);
MainTextBox.setSelectionRange(iStart + sText.length, iStart + sText.length);
}
MainTextBox.focus();
}
function AutoTextMatch (sText, arrValues) {
for (var i=0; i < arrValues.length; i++) {
if (arrValues[i].indexOf(sText) == 0) {
return arrValues[i];
}
}
return null;
}
function Main(MainTextBox, oEvent, arrValues) {
switch (oEvent.keyCode) {
case 38: //up arrow
case 40: //down arrow
case 37: //left arrow
case 39: //right arrow
case 33: //page up
case 34: //page down
case 36: //home
case 35: //end
case 13: //enter
case 9: //tab
case 27: //esc
case 16: //shift
case 17: //ctrl
case 18: //alt
case 20: //caps lock
case 8: //backspace
case 46: //delete
return true;
break;
default:
AutoReplace(MainTextBox, String.fromCharCode(isIE ? oEvent.keyCode : oEvent.charCode));
var iLen = MainTextBox.value.length;
var sMatch = AutoTextMatch(MainTextBox.value, arrValues);
if (sMatch != null) {
MainTextBox.value = sMatch;
MainTextBox(MainTextBox, iLen, MainTextBox.value.length);
}
return false;
}
}
</script>
<script>
var arrValues = ["one", "MainTextBoxRange", "two", "Three", "Four", "Five", "Six", "Seven","Eight","Nine","Ten"];
</script>
For Download sample Code, sampleautocompletetextbox
Conclusion:
Hope,this helps,
Happy Coding.
Searching for this for some time now – i guess luck is more advanced than search engines