Florian: Abfrage von Value funktinoniert nur im Safari...

Hallo, habe eine Valueabfrage für ein Formular gemacht.
Es geht darum, dass das Bitte wählen Feld nicht als gültiges Feld für ein pflichtfeld gilt und ein Alert kommt wenn das Bittewählen Feld angeklickt ist, dass man ein Gültiges Feld auswählen soll.

Hier das JS:
-------------------------------------------------
<SCRIPT TYPE="text/javascript" LANGUAGE="Javascript">

function check(auswahl) {
 if (document.formular1.TopThema.value == 'Bittewaehlen') {
 alert ("Bitte wähle Dein Top Thema");
 return false;
 }

else {

return true;
 }
}
</script>

Hier das Selectfeld:

<select name="TopThema" size="1">
      <option value="Bittewaehlen">Bitte w&auml;hlen</option>
      <option value="Kaltaquise">Kaltakquise</option>
</select>

Ich arbeite auf nem MAC und nutze den Safari. Da funktioniert diese Anweisung einwandfrei.
Auf nem Windows Rechner mit Firefox oder IE garnicht. Auch der Firefox oder IE auf dem MAC übergehen diese Abfrage.

Kann mir da vll. einer helfen? Danke.

  1. n'abend,

    Ich arbeite auf nem MAC und nutze den Safari. Da funktioniert diese Anweisung einwandfrei.
    Auf nem Windows Rechner mit Firefox oder IE garnicht. Auch der Firefox oder IE auf dem MAC übergehen diese Abfrage.

    getestet wurde folgendes unter WinXP mit Firefox 1.5 und Internet Explorer 6. Beide browser lieferten die gewünschten Ergebnisse.

    <script type="text/javascript">
    function checkForm()

    {  
      var selector = document.getElementById('selector');  
      if(selector && selector.value == 0) alert('ungültig!');  
      else alert('gültig');  
      return false;  
    }
    

    </script>

    <form name="bla" action="#" method="get" onsubmit="return checkForm();">  
    <select name="selector" id="selector">  
      <option value="0">ung&uuml;ltig</option>  
      <option value="1">g&uuml;ltig 1</option>  
      <option value="2">g&uuml;ltig 2</option>  
    </select>  
    <input type="submit" name="go" value="go">  
    </form>  
    
    

    weiterhin schönen abend...

    --
    wer braucht schon großbuchstaben?
    sh:( fo:# ch:# rl:° br:> n4:& ie:{ mo:} va:) de:] zu:} fl:{ ss:? ls:[ js:|
    1. Hi, danke für die Antwort,

      habe das script mal auf mein Formular übertragen. Aber da tut sich leider garnichts...

      Wäre da noch irgendwas wichtig zu beachten??

      Gruß
      Florian

      1. n'abend,

        Hi, danke für die Antwort,

        habe das script mal auf mein Formular übertragen. Aber da tut sich leider garnichts...

        Wäre da noch irgendwas wichtig zu beachten??

        vielleicht, dass die Funktion auch tatsächlich aufgerufen wird?
        Oder aber, dass man - wie Struppi schon sagte - mit den richtigen Funktionen spielt. (Wobei ich <select>.value zur Abfrage in etlichen Scripts einsetze, die alle wunderbar funktionieren ;)

        weiterhin schönen abend...

        --
        wer braucht schon großbuchstaben?
        sh:( fo:# ch:# rl:° br:> n4:& ie:{ mo:} va:) de:] zu:} fl:{ ss:? ls:[ js:|
        1. vielleicht, dass die Funktion auch tatsächlich aufgerufen wird?
          Oder aber, dass man - wie Struppi schon sagte - mit den richtigen Funktionen spielt. (Wobei ich <select>.value zur Abfrage in etlichen Scripts einsetze, die alle wunderbar funktionieren ;)

          in jedem Browser?
          Netscape 4 sicher nicht (wobei dem würde ich sowieso kein JS oder CSS mehr vorsetzten), aber wie's auf dem Mac oder unter Linux aussieht weiß ich nicht.

          Struppi.

          --
          Javascript ist toll (Perl auch!)
          1. n'abend,

            in jedem Browser?
            Netscape 4 sicher nicht (wobei dem würde ich sowieso kein JS oder CSS mehr vorsetzten), aber wie's auf dem Mac oder unter Linux aussieht weiß ich nicht.

            auf dem Mac machen FireFox und Safari keine Probleme.

            weiterhin schönen abend...

            --
            wer braucht schon großbuchstaben?
            sh:( fo:# ch:# rl:° br:> n4:& ie:{ mo:} va:) de:] zu:} fl:{ ss:? ls:[ js:|
  2. Es geht darum, dass das Bitte wählen Feld nicht als gültiges Feld für ein pflichtfeld gilt und ein Alert kommt wenn das Bittewählen Feld angeklickt ist, dass man ein Gültiges Feld auswählen soll.

    Du hast mal in selfhtml nachgeschaut?

    Hier das JS:

    <SCRIPT TYPE="text/javascript" LANGUAGE="Javascript">

    function check(auswahl) {
    if (document.formular1.TopThema.value == 'Bittewaehlen') {

    .... nein hast du nicht. Auch wenn das heute bei vielen Browsern funktioniert wird der Wert eines selectfeldes anders abgefragt (s. selfhtml).

    Hier das Selectfeld:

    und wo ist der Aufruf der Funktion?

    Struppi.

    --
    Javascript ist toll (Perl auch!)
    1. @ Struppi, der Aufruf der Funktion finder im Formtag statt

      <FORM ACTION="#" METHOD="POST" onsubmit="return checkForm();" name="formular1">

      okay, wenns anders abgefragt wird, dann ist es ja kein Wunder das das nicht geht! ;)
      Habe diese Methode mal irgendwo gesehen und mir gedacht, dass das wohl funktioniert... tjoa tuts wohl net! :P

      1. okay, wenns anders abgefragt wird, dann ist es ja kein Wunder das das nicht geht! ;)
        Habe diese Methode mal irgendwo gesehen und mir gedacht, dass das wohl funktioniert... tjoa tuts wohl net! :P

        um die geht es nicht, es geht um die Abfrage des Wertes einer Selectbox, da du anscheinend selfhtml nicht kennst helfe ich dir beim suchen

        http://de.selfhtml.org/javascript/objekte/options.htm

        Struppi.

        --
        Javascript ist toll (Perl auch!)
        1. Okay, danke für die Mühe. Ich weiss, Time is Money!

          Also ich habe das JS von SELFHTML jetzt mal in meine HTML gepackt.

          function check(auswahl) {
          if (document.formular1.TopThema.options[0].selected == true) {
              alert("Bitte wähle dein Top Thema aus");
              return false;
            }
            return true;
          }
          </script>

          mmh... sieht ja schon etwas anders aus. Sooo... und wer hätte es gedacht?!
          Im Safari funktioniert es.
          In allen anderen Browsern tut sich garnix... *mit den schultern zuck*
          Sooo falsch kann das doch da garnicht sein.

          Haben das übrigens mal auf nem anderen MAC mit Safari getest, da gings auch nicht.
          Muss ich das verstehen?? O.o

          1. Hallo Florian,

            hier ein Auszug aus einer meiner Seiten, der den ausgewählten Wert in ein anderes Feld kopiert:

              
              <select name="umftab" size="1" onChange="document.frm.umf.value=this.options[this.options.selectedIndex].value">  
               <option value=211>Radgr&ouml;&szlig;e w&auml;hlen</option>  
               <option value=194>25-559</option>  
               <option value=198>35-559</option>  
                      ...  
              </select>  
            
            

            Gruß, Jürgen

          2. n'abend,

            Haben das übrigens mal auf nem anderen MAC mit Safari getest, da gings auch nicht.
            Muss ich das verstehen?? O.o

            Du möchtest mal die Verlinkung deiner Scripts / etc. prüfen. Du willst da keine lokalen Pfade drin haben.

            In den anderen Browsern möchtest du sicherstellen, dass du wirklich mit der aktuellen Version arbeitest (Stichwort: BrowserCache)

            weiterhin schönen abend...

            --
            wer braucht schon großbuchstaben?
            sh:( fo:# ch:# rl:° br:> n4:& ie:{ mo:} va:) de:] zu:} fl:{ ss:? ls:[ js:|
          3. Ich finde es halt eben nur merkwürdig, dass selbs die Variante von SELFHTML nicht funktioniert. Irgendwas stimmt doch da nicht.

            Das Javascript von SelfHTML kann ja so verkehrt nicht sein. Muss an etwas anderem liegen...

            im Prinzip geht es mir ja nur darum, dass ein Alertfenster aufgeht, wenn Bitte wählen ausgewählt ist und die Funktion stehen bleibt. Bei allen anderen auswahlmöglichkeiten soll die funktion ein true zurück geben...

            eigentlich doch garnicht so schwer... aber irgendwas is da faul...

          4. function check(auswahl) {

            Was ist den auswahl?

            if (document.formular1.TopThema.options[0].selected == true) {
                alert("Bitte wähle dein Top Thema aus");
                return false;
              }
              return true;
            }

            ok, es funktioniert nicht und du bekommst auch keine Fehlermeldung, dann prüf doch mal ob die Funktion überhaupt aufgerufen wird und ob du das hast was du erwartest.
            function check() {

            alert('Funktion wird aufgerufen');
            alert(document.formular1);
            alert(document.formular1.TopThema);
            alert(document.formular1.TopThema.options[0]);
            alert(document.formular1.TopThema.options[0].selected);
            }

            Es bringt ja nichts einfach rumzustochern.

            Struppi.

            --
            Javascript ist toll (Perl auch!)