Sven H.: Problem beim Einfügen von Werten in Listenfeld

Hallochen,

Ich habe eine Textdatei mit vier Einträgen. Diese werden beim Laden der Seite per Datenanbindung in ein Listenfeld eingefügt.
Um mein Problem jetzt besser darstellen zu können, schaut Euch am Besten meine Testseite an. (sehr kurz und übersichtlich)

Und hier der Link:  <a href="http://home.t-online.de/home/svenho/test/test.htm">Testseite</a>

Wäre Euch für Tips sehr dankbar. (Vielleicht müsste man die Abfrage des Feldes 'inhalttab' verzögern, weiß aber nicht wie das geht)

Gruß Sven

  1. Guten Morgen alle zusammen.

    Und hier der Link:  <a href="http://home.t-online.de/home/svenho/test/test.htm">Testseite</a>

    Hier nochmals ein allgemeiner Hinweis für Sven:
    Wie setze ich in diesem Forum einen Link?
    Die Antwort findest du hier:
    http://www.teamone.de/selfaktuell/forum/forumsfaq_2.htm#a4
    Da wollt wohl einer die Forums-FAQ nicht gelesen? :-)

    Schönen Tag noch.
    olli

    1. Tach Olli,

      Sorry, ich dachte es funktioniert so. Als ich merkte, dass es nicht geklappt hat, hab ich mir gleich die FAQ durchgelesen. Da wars aber leider schon zu spät.

      Naja, beim nächsten mal klappts hoffentlich.

      Aber eine Lösung für mein Problem hast Du nicht, oder ?

      Auch noch einen schönen Tag.

  2. Hallo Sven,

    Ich habe eine Textdatei mit vier Einträgen. Diese werden beim Laden der Seite per Datenanbindung in ein Listenfeld eingefügt.
    Um mein Problem jetzt besser darstellen zu können, schaut Euch am Besten meine Testseite an. (sehr kurz und übersichtlich)

    Es ist tatsächlich ein Zeitproblem (zumindest im IE5.5 unter NT). Ich habe jetzt mal mit deinem Beispiel etwas gespielt:

    <body onload="einfuegen()">

    <p><object id="rsinhalt"
    classid="clsid:333C7BC4-460F-11D0-BC04-0080C7055A83"
    align="baseline" border="0" width="192" height="192"><param
    name="DataURL" value="test.txt"><param name="UseHeader"
    value="true"><param name="FieldDelim" value=";"></object></p>
    <script language="JScript">

    function einfuegen()
       {
        document.all.rsinhalt.Reset();
        document.all.anzeigetabelle.dataSrc="#rsinhalt";
        i =1;
        setTimeout('setzen()',100);   //hier war die kleinste gueltige Zeit 40ms, alles was drunter lag erzeugt Fehlermeldungen

    }

    function setzen()
    {
    if (i <= document.all.rsinhalt.recordset.recordcount)
        {

    var neuerEintrag = document.all.inhalttab.innerText;
         var indexnr = document.all.listinhalt.length;
         document.all.listinhalt.options[indexnr] = new Option(neuerEintrag);
         document.all.anzeigetabelle.nextPage();
         i++;
         setTimeout('setzen()',50)  //die Funktion nextPage() braucht mindestens 20ms, sonst wird nur der erste Listeneintrag gezeigt
        }

    }

    </script>

    <form name="Eingabe">
        <p>Datensätze:  <select name="listinhalt" size="1">
        </select> </p>
    </form>

    <table border="0" width="100%" id="anzeigetabelle"
    style="display:none" datapagesize="1">
        <tr>
            <td width="20%"><SPAN id="inhalttab" dataFld="inhalt"></SPAN></td>
        </tr>
    </table>

    Ich fürchte je größer die Datei ist und je mehr Einträge du hast, umso länger wird es dauern, außerdem ist dies stark vom Browser und vom  Anwendersystem abhängig.

    Ein Alternativvorschlag wäre:

    speichere deine Daten in einer externen js-Datei in einem Array:
    Darauf hast du dann nach dem Laden der Seite Zugriff und auch der Netscape kommt damit zurecht.

    Viele Grüße

    Antje

    1. Hallo Antje,

      Vielen Dank für Deine Mühe. Das mit der ext. JS-Datei hört sich ja gut an. Ich habe aber keine Ahnung, wie ich das machen soll. Am besten wäre ein kleines Beispiel (kannst Du mir auch mailen).
      Wäre Dir sehr dankbar.

      mfg
      Sven