Timo: Selektbox mit Javascript durchsuchen

Beitrag lesen

Hallo Siechfred,

nochmal danke für Deine Antwort. Wir nähern uns der Zielgeraden - aber eine kleine Frage habe ich noch ;-)

Das wird sie automatisch, wenn das Formular versandt wird. Ansonsten speichere die ursprünglichen Einträge in einem Array.

Ich habe nun versucht, den Inhalt der Selectbox in einem (globalen) Array zu speichern:

// Array mit Originalinhalt der Selectbox wird erstellt
save_value = new Array();
save_value = document.searchform.users;

Zudem habe ich eine Hilfsfunktion testIt() erstellt, um die Länge von save_value zu überprüfen. Nun ist es leider so, dass mit dem Entfernen eines Elements aus der Selectbox auf die Länge des Arrays um eins abnimmt. Woran liegt das? In der Schleife werden die Elemente doch nur aus der Selectbox gelöscht?

Hier noch einmal der komplette Quellcode:

<script language="JavaScript">
function searchSelectBox(form_name, form_element, search_value, do_reset)
{
 search_value = document.searchform.search_value.value;

// Array mit Originalinhalt der Selectbox wird erstellt
 save_value = new Array();
 save_value = document.searchform.users;

testIt();

if(do_reset == false)
 {
  for(i = 0; i < document.searchform.users.options.length; i++)
  {
   var look_for = document.searchform.users[i].firstChild.data.toLowerCase();
   var result = look_for.indexOf(search_value.toLowerCase());

if(result == -1)
   {
    document.searchform.users.options[i] = null;
    i--;
   }

testIt();
  }
 }
 else
 {
  alert("else!");

for(i = 0; i < save_value.length; i++)
  {
   alert(save_value[i].value);

document.searchform.users[i] = save_value[i];
  }
 }

testIt();
}

function testIt()
{
 alert("testIt()-Länge: "+save_value.length);
}
</script>

<form name="searchform" action="" method="post">
  <p>
    <select name="users" size="10" multiple>
      <option value="1">Max Mustermann</option>
      <option value="2">Mona Mustermann</option>
      <option value="3">Peter Gehtsgut</option>
      <option value="4">Sabine Sauerzapfe</option>
      <option value="5">Harald Schmidt</option>
      <option value="6">Robert Enke</option>
      <option value="7">Jarzi Barzi</option>
    </select>
  </p>
  <p>
    <input name="search_value" type="text" id="search_value">
    <input type="submit" name="Submit" value="Go!" onClick="searchSelectBox('searchform', 'users', 'Mann')">
  </p>
  <p><a href="#" onClick="searchSelectBox('searchform', 'users', false, false)">Los</a> / <a href="#" onClick="testIt()">Zur&uuml;ck</a></p>
</form>

MfG

Timo