Henry: Frage zum Wiki-Artikel „Suchformulare“

Beitrag lesen

problematische Seite

grrr… also manchmal nervt's echt. Wieder alles neu schreiben, weil wieder mal alles weg.

Hallo Hubert,

das davor betrifft dich nicht, geht darum, dass ich hier oft was schreibe und dann irgendwo an falscher Stelle rankomme, dann ist der Eintrag weg.

Ok, also auf ein Neues.

http://www.lrs-legasthenie.at/MGLtest/lesen.html

Was da noch ein wenig verwirrend sein kann, ist dass man bei der Eingabe bereits einen Link erzeugt, der ja auf ein Dokument zeigen kann was gar nicht vorhanden ist. Daher hier noch als optionale Ergänzung und gleichzeitiger Prüfung der Dateiliste(Nur wenn dort vorhanden wird Link erzeugt):

 <script>
    function urlist(v)
    {

      var dataobj = document.getElementById('Lesen');
      var data_ar = dataobj.getElementsByTagName('option')
      var anzahl = data_ar.length;
      
      var i;
      for ( i=0; i<=anzahl; i++ ) {
      if(data_ar[i].value == v){var chk_ok = 1;break;}
      }
      
      if(chk_ok)
      {
      document.getElementById('pdf').innerText=v+'.pdf';
      document.getElementById('pdf').href=v+'.pdf';
      }else{return false;}
      
    }
  </script>

@beatovich

Damit dürfte sich dann auch dein Einwand erledigt haben, obwohl ich immer noch nicht genau weiß, wo drauf du hinaus wolltest, bzw. was du da für eine Gefährdung siehst. Andere Sache, warum Edge nicht mit innerHTML hierbei zurecht kommt... keine Ahnung. Aber da du ja auch innerText für gravierend wichtig hierbei hältst, kannst du viell. was dazu erzählen?


Dann hätte ich noch eine eigene Frage:

Bei der Funktion fiel mir ein seltsames Verhalten auf, dass ich mir nicht erklären kann. Denn das Ganze funktioniert(eigentlich auch nicht, erkläre ich noch) auch ohne die IF also chk_ok und if(chk_ok) .

<script>
    function urlist(v)
    {

      var dataobj = document.getElementById('Lesen');
      var data_ar = dataobj.getElementsByTagName('option')
      var anzahl = data_ar.length;
      
      var i;
      for ( i=0; i<=anzahl; i++ ) {
      if(data_ar[i].value == v){break;}
      }

      document.getElementById('pdf').innerText=v+'.pdf';
      document.getElementById('pdf').href=v+'.pdf';   
    }
  </script>
  1. Warum funktionierts richtig auch ohne IF?

  2. Warum funktioniert gar nichts ohne break;

aber... in beiden Fällen nur, wenn ich break; nutze. Sonst wird nach der Schleife gar nichts ausgeführt. Jetzt kann ich nicht nachvollziehen, warum die Schleife nebenbei als Kontrollstruktur agiert. Hat doch normalerweise keinen Einfluss auf das was nach der Schleife funktioniert?

Gruss
Henry

0 53

Frage zum Wiki-Artikel „Suchformulare“

Hubert Burböck
  • frage zum wiki
  • html
  1. 0
    marctrix
    1. -1
      pl
      1. 0
        marctrix
    2. 0
      Hubert Burböck
      1. 0
        Gunnar Bittersmann
        • design
        1. 0
          Hubert Burböck
          1. 1
            Gunnar Bittersmann
      2. 0
        marctrix
        1. 0
          Hubert Burböck
          1. 0
            marctrix
          2. 0
            marctrix
            1. 0
              Hubert Burböck
              1. 0
                marctrix
                1. 0
                  Matthias Apsel
                  1. 0
                    marctrix
                    • menschelei
            2. 1
              Matthias Apsel
          3. 1
            Henry
            • frage zum wiki
            • html
            • javascript
            1. 1
              JürgenB
              1. 0
                Henry
                1. 0
                  Christian Kruse
                  1. 0
                    Henry
            2. 0
              marctrix
              1. 1
                Hubert Burböck
            3. 0
              Henry
              1. 0
                beatovich
                1. 0
                  Henry
                  1. 0
                    Matthias Apsel
                    1. 0
                      beatovich
          4. 0
            marctrix
            1. 0
              Hubert Burböck
              1. 0
                Hubert Burböck
                1. 0
                  beatovich
                  1. 3
                    Hubert Burböck
                    1. 0
                      Henry
                      • frage zum wiki
                      • html
                      • javascript
                      1. 0
                        beatovich
                        1. 0
                          Henry
                          1. 0
                            beatovich
                            1. 0
                              Henry
                          2. 0
                            Matthias Apsel
                            1. 0
                              Henry
                              1. 0
                                beatovich
                              2. 0
                                Henry
                      2. 3
                        dedlfix
                        1. 3
                          Orlok
                          • javascript
                        2. 0
                          Henry
                          1. 1
                            Gunnar Bittersmann
                            • browser
                            • javascript
                            1. 0
                              Henry
  2. 1
    Rolf B
    1. 0
      Hubert Burböck
      1. 0
        Rolf B
        1. 2
          Hubert Burböck
          1. 1
            Rolf B