---
title: "Jojoxs Auto select"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/95463-jojoxs-auto-select"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Jacob"
published: "2004-01-21T23:28:10.000Z"
updated: "2004-01-26T15:44:21.000Z"
replies: 7
views: 301
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/95463-jojoxs-auto-select"
---

# Jojoxs Auto select

## #1 — Jacob, 2004-01-21T23:28Z

Jag har försökt modifiera jojoxx auto select script, det fungerar tyvärr inte riktigt.

```
<script language="javascript" type="text/javascript">
var ignorevw=false; // Skall V eller W ignoreras? 
var lista = new Array(); 
function searchlist(value,listobj){ 
	if(lista.length == 0) buildlist(listobj); 
	value = value.split(' ');
	matches=0; 
	listobj.length = lista.length; 
	for(i=0;i<value.length;i++){
		for(n=0;n<lista.length;n++){ 
			namn = lista[n].text.split(' ');
			for(p=0;p<namn.length;p++){
				if(namn[p].substring(0,value[i].length).toLowerCase()==value[i].toLowerCase()||ignorevw&&namn[p].substring(0,value[i].length).replace(/w/g,'v').toLowerCase()==value[i].replace(/w/g,'v').toLowerCase()){ 
					listobj[matches].text = lista[n].text; 
					listobj[matches].value = lista[n].value; 
					matches++; 
				}
			} 
		} 
	}
	listobj.length = matches; 
	listobj.selectedIndex=0; 
} 
function buildlist(obj){ 
	for(n=0;n<obj.length;n++){ 
		lista[n] = new makeobj(obj[n].value,obj[n].text); 
	} 
} 
function makeobj(value,text){ 
	this.value=value; this.text=text; 
} 
</script>
<form>
<table border="0">
<tr>
<td>
<input type="text" name="search" onKeyUp="searchlist(this.value,this.form.lista);" onKeyPress="searchlist(this.value,this.form.lista);" style="width: 150px;"><br> 
<select name="lista" size="4" onChange="this.form.search.value=this[this.selectedIndex].value" style="width: 150px;"> 
	<option value="1">Lindehoff Jacob</option>
	<option value="2">Nilsson Adam</option>
	<option value="3">Karlsson Ulf</option>
	<option value="4">Östern Nisse</option>
</select>
</td>
</tr>
</table>
</form>
```

Det jag vill åstakomma är att man ska kunna skriva förnamnet eller efternamnet första. Med det vnliga skriptet så måste man skriva exakt i den ordningen som dom står.

Mitt skript fungerar nästa men det är lite struligt testa så får ni se.

Permalänk: https://www.webforum.nu/p/95463

## #2 — Jojoxx, 2004-01-22T15:16Z

Try this:

```
<script type="text/javascript"> 
var ignorevw=false; // Skall V eller W ignoreras? 
var ignorecase=true; // Ignorera gemener / VERSALER ? 
var lista = new Array(); 
function searchlist(value,listobj){ 
   if(lista.length == 0) buildlist(listobj); 
   matches=0; 
   value=(ignorevw)?value.replace(/w/g,'v'):value;
   value=(ignorecase)?value.toLowerCase():value;
   listobj.length = lista.length; 
   for(n=0;n<lista.length;n++){ 
      var teststr=" "+lista[n].text; teststr=(ignorevw)?teststr.replace(/w/g,'v'):teststr; teststr=(ignorecase)?teststr.toLowerCase():teststr;
      var reverseorder=" "+teststr.split(" ")[2]+" "+teststr.split(" ")[1];
      if(teststr.indexOf(" "+value)>-1||reverseorder.indexOf(' '+value)>-1){
         listobj[matches].text = lista[n].text; 
         listobj[matches].value = lista[n].value; 
         matches++; 
      }
   } 
   listobj.length = matches; 
   listobj.selectedIndex=0; 
} 
function buildlist(obj){ 
   for(n=0;n<obj.length;n++){ 
      lista[n] = new makeobj(obj[n].value,obj[n].text); 
   } 
} 
function makeobj(value,text){ 
   this.value=value; this.text=text; 
} 
</script> 

<form> 
<input type="text" name="search" onKeyUp="searchlist(this.value,this.form.lista);" onKeyPress="searchlist(this.value,this.form.lista);" style="width: 150px;"><br> 
<select name="lista" size="4" onChange="this.form.search.value=this[this.selectedIndex].text;" style="width: 150px;"> 
	<option value="1">Lindehoff Jacob</option>
	<option value="2">Nilsson Adam</option>
	<option value="3">Karlsson Ulf</option>
	<option value="4">Östern Nisse</option>
</select> 
</form>
```

Permalänk: https://www.webforum.nu/p/1256295

## #3 — Jacob, 2004-01-22T17:24Z

Den fungerar nästan som jag vill, problemet är att när men trycker mellansla och ska skriva efternamner eller tvärtom så försvinner resultatet. kan man lösa det oxå

Permalänk: https://www.webforum.nu/p/1256370

## #4 — Jojoxx, 2004-01-22T17:57Z

Liten quick'n'dirty-ändring. Prova igen.

Permalänk: https://www.webforum.nu/p/1256407

## #5 — Jacob, 2004-01-22T21:29Z

Tackar nu fungerar det

Permalänk: https://www.webforum.nu/p/1256537

## #6 — Jacob, 2004-01-23T08:26Z

Kan man få scriptet att fungera med denna select oxå:

```
<select name="lista" size="4" onClick="this.form.uID.value=this[this.selectedIndex].value; this.form.search.value=this[this.selectedIndex].text" onChange="this.form.uID.value=this[this.selectedIndex].value; this.form.search.value=this[this.selectedIndex].text" style="width: 230px;"> 
<option value="3">Karlsson Ulf, Cob Media</option>
<option value="1">Lindehoff Jacob, Cob Media</option>
<option value="2">Nilsson Adam, Cob Media</option>
<option value="4">Östern Nisse, Cob Media</option>
<option value="9">då g, Net-On</option>
<option value="7">Linden Jake, Net-On</option>
<option value="8">Nordin Jake, Net-On</option>
</select>
```

Permalänk: https://www.webforum.nu/p/1256661

## #7 — Jacob, 2004-01-26T09:17Z

Går det inte att fixa om det är mer än två ord eller?

Permalänk: https://www.webforum.nu/p/1260974

## #8 — Jojoxx, 2004-01-26T15:44Z

```
<script type="text/javascript"> 
var ignorevw=false; // Skall V eller W ignoreras? 
var ignorecase=true; // Ignorera gemener / VERSALER ? 
var lista = new Array(); 
function searchlist(value,listobj){ 
   if(lista.length == 0) buildlist(listobj); 
   matches=0; 
   value=(ignorevw)?value.replace(/w/g,'v'):value;
   value=(ignorecase)?value.toLowerCase():value;
   listobj.length = lista.length; 
   for(n=0;n<lista.length;n++){ 
      var teststr=lista[n].text; teststr=(ignorevw)?teststr.replace(/w/g,'v'):teststr; teststr=(ignorecase)?teststr.toLowerCase():teststr; teststr=teststr.replace(/,/g,'');
      var testarray=teststr.split(" "); valuearray=value.split(" "); var amatches=0;
      for(var an=0;an<testarray.length;an++){
         for(var ann=0;ann<valuearray.length;ann++){
            if((" "+testarray[an]).match(new RegExp(" "+valuearray[ann]))){ amatches++; valuearray[ann]=false; }
         }
      }
      if(amatches==valuearray.length){
         listobj[matches].text = lista[n].text; 
         listobj[matches].value = lista[n].value; 
         matches++; 
      }
   } 
   listobj.length = matches; 
   listobj.selectedIndex=0; 
} 
function buildlist(obj){ 
   for(n=0;n<obj.length;n++){ 
      lista[n] = new makeobj(obj[n].value,obj[n].text); 
   } 
} 
function makeobj(value,text){ 
   this.value=value; this.text=text; 
} 
</script> 

<form> 
<input type="text" name="search" onKeyUp="searchlist(this.value,this.form.lista);" onKeyPress="searchlist(this.value,this.form.lista);" style="width: 150px;"><br> 
<select name="lista" size="4" onChange="this.form.search.value=this[this.selectedIndex].text;" style="width: 150px;"> 
<option value="3">Karlsson Ulf, Cob Media</option>
<option value="1">Lindehoff Jacob, Cob Media</option>
<option value="2">Nilsson Adam, Cob Media</option>
<option value="4">Östern Nisse, Cob Media</option>
<option value="9">då g, Net-On</option>
<option value="7">Linden Jake, Net-On</option>
<option value="8">Nordin Jake, Net-On</option>
</select> 
</form>
```

Permalänk: https://www.webforum.nu/p/1261156

---

Tråden på webben: https://www.webforum.nu/amne/javascript/95463-jojoxs-auto-select
