# Problem mit onchange Listener



## Neili (24. Jul 2007)

Hallo Leute!

Hab ein Problem das ich leider nicht lösen kann!
Beim Auswählen einer Option in der Auswahlliste wird die Funktion extendMenue() zwar ausgeführt jedoch kommt in der JavaScript Fehler Konsole im Firefox das Problem f has no properties!

Danke!


```
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Presse</title>
<style type="text/css">
.style1 {
	margin-left: 11px;
}
.style2 {
	margin-left: 29px;
}
.style3 {
	margin-left: 15px;
}
.style4 {
	margin-left: 52px;
}
.style5 {
	margin-left: 32px;
}
</style>
<script type="text/javascript" src="laufdata.js"></script>
<link rel="stylesheet" title="CSS" type="text/css" href="../styles/style1.css" media="screen" />
<script type="text/javascript">
var f=document.forms[0];

function isAPLZ(n) {
   var s = "" + n;
   var ziffern = "0123456789";
   if (s.charAt(0) == "-") {
      s = s.substring(1, s.length);
   }
   if (s=="0") {
      return true;
   }
   if (s.charAt(0) == "0") {
      return false;
   }
   for (var i=0; i<s.length; i++) {
      if (ziffern.indexOf(s.charAt(i)) == -1) {
         return false;
      }
   }
   return true;
}

function isValidEmail(mail) {
   var klammeraffe = mail.indexOf("@");
   if (klammeraffe < 1) {
      return false;
   } else {
      var punkt = mail.substring(klammeraffe).indexOf(".");
      if (punkt < 2) {
         return false;
      } else {
         return true;
      }
   }
}

function extendMenue() {
	
	if (f.sportu.selectedIndex==1)
	{
		alert("test");
	}
}

function pruefen() {
   var f = document.forms[0];
   
   while (f.nachnametext.value == "") {
      var nachname = prompt("Bitte geben Sie Ihren Nachnamen ein!");
      if (nachname) {
         f.nachnametext.value = nachname;
      }
   }
   while (f.vornametext.value == "") {
      var vorname = prompt("Bitte geben Sie Ihren Vornamen ein!");
      if (vorname!="") {
         f.vornametext.value = vorname;
      }
   }
   while (f.gebtext.value == "") {
      var geb = prompt("Bitte geben Sie Ihr Geburtsdatum ein!");
      if (geb) {
         f.gebtext.value = geb;
      }
   }
   while (f.streettext.value == "") {
      var street = prompt("Bitte geben Sie Ihre Straße ein!");
      if (street) {
         f.streettext.value = street;
      }
   }
   while (f.plztext.value == "") {
      var plz = prompt("Bitte geben Sie Ihre Postleitzahl ein!");
      if (plz && plz.length==4 && isAPLZ(plz)) {
         f.plztext.value = plz;
      }
   }
   while (f.orttext.value == "") {
      var ort = prompt("Bitte geben Sie Ihren Wohnort ein!");
      if (ort) {
         f.orttext.value = ort;
      }
   }
   while (f.emailtext.value == "") {
      var email = prompt("Bitte geben Sie Ihre E-Mail-Adresse ein!");
      if (email) {
	  	if(isValidEmail(email)) {
         	f.emailtext.value = email;
		}
      }
   }
   
   /*var it = document.getElementsByTagName("form")[0];
   
   var sel = document.createElement("select");
   sel.setAttribute("name","lauf");
   
   it.appendChild(sel);*/
   
   return true;
}
</script>
</head>
<body>


<div id="container">
	
	<div id="masthead">
		[img]../images/logo.gif[/img]


		Büro (000) 000-0000

		Fax (000) 000-0000

		gebührenfrei (000) 000-0000</p>
	</div>
	
	
	<div id="navigation">
		<ul>
			[*][url="../default.htm"]Privat[/url]
			[*][url="../about/about.htm"]Über[/url]
			[*][url="../news/news.htm"]Nachrichten[/url]
			[*][url="../products/products.htm"]Produkte[/url]
			[*][url="../services/services.htm"]Dienste[/url]
			[*][url="../calendar/calendar.htm"]Kalender[/url]
			[*][url="../contact/contact.htm"]Kontakt[/url]
		[/list]
	</div>
	
	
	<div id="page_content">
		
		<div id="column_l">
			<h2>Presse</h2>
			


			<form method="post" name="data">
           	  <fieldset id="firstfieldset">
           	  <legend>Personendaten</legend>
				
				<label id="nachname">[b]Nachname:[/b]</label>
				<input name="nachnametext" onmouseover="window.status='Bitte geben Sie hier Ihren Nachnamen ein!';return true;" 					onmouseout="window.status='';return true;" type="text" style="height: 14px; width: 142px" />
				<label id="vorname">[b]

				

				Vorname:[/b]</label>
				<input name="vornametext" onmouseover="window.status='Bitte geben Sie hier Ihren Vornamen ein!';return true;" onmouseout="window.status='';return true;" type="text" style="height: 14px; width: 142px" class="style1" />
                <label id="geb">[b]

				

			    Geburtsdatum:[/b]</label>
      		    <input name="gebtext" onmouseover="window.status='Bitte geben Sie hier Ihr Geburtsdatum ein!';return true;" onmouseout="window.status='';return true;" type="text" style="height: 14px; width: 142px" class="style1" />
				<label id="street">[b]

				

				Straße:[/b]</label>
				<input name="streettext" onmouseover="window.status='Bitte geben Sie hier Ihre Anschrift ein!';return true;" onmouseout="window.status='';return true;" type="text" style="height: 14px; width: 142px" class="style2" />
				<label id="plz">[b]

				

				PLZ:[/b]</label>
				<input name="plztext" onmouseover="window.status='Bitte geben Sie hier Ihre Postleitzahl ein!';return true;" onmouseout="window.status='';return true;" type="text" style="height: 14px; width: 88px" class="style4" />
				<label id="ort">[b]

				

				Wohnort:[/b]</label>
				<input name="orttext" onmouseover="window.status='Bitte geben Sie hier Ihren Wohnort ein!';return true;" onmouseout="window.status='';return true;" type="text" style="height: 14px; width: 142px" class="style3" />
				<label id="email">[b]

				

				E-Mail:[/b]</label>
				<input name="emailtext" onmouseover="window.status='Bitte geben Sie hier Ihre E-Mail Adresse ein!';return true;" onmouseout="window.status='';return true;" type="text" style="height: 14px; width: 142px" class="style5" />

			 
              </fieldset>
              
              <fieldset id="secondfieldset">
              <legend>Sportunion</legend>
              <label id="sportunion">[b]
			  Sind Sie Mitglied der Sportunion?[/b]</label>
              <select name="sportu" onchange="extendMenue();">
				<option value="Nein">Nein</option>
				<option value="Ja">Ja</option>
			  </select>
              </fieldset>
                

				<input name="proof" type="button" onclick="pruefen();" value="Weiter zur Anmeldung" />
                

                

              
		  </form>

			</p>
			</div>
		
		
		<div id="column_r">
			<h4>Ressourcenübersicht</h4>
			<ul>
				[*]Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
				[*]Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
				[*]Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
				[*]Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
			[/list]
			</div>
		</div>
	
	
	<div id="footer">
		

[url="../default.htm"]Privat[/url] | [url="../about/about.htm"]Über[/url] 
		| [url="../calendar/calendar.htm"]Kalender[/url] |
		[url="../contact/contact.htm"]Kontakt[/url] |
		[url="../employees/employees.htm"]Mitarbeiter[/url] |
		[url="../employment/employment.htm"]Beschäftigung[/url] |
		[url="../faq/faq.htm"]FAQ[/url] |
		[url="../information_links/information_links.htm"]Informationshyperlinks[/url] 
		| [url="../news/news.htm"]Nachrichten[/url] |
		[url="../photo_gallery/photo_gallery.htm"]Fotosammlung[/url] |
		[url="press.htm"]Presse[/url] | [url="../products/products.htm"]Produkte[/url] 
		| [url="../promotions/promotions.htm"]Promotion[/url] |
		[url="../services/services.htm"]Dienste[/url] |
		[url="../site_map/site_map.htm"]Sitemap[/url]</p>
		

Copyright © 0000 Firmenname. Alle Rechte vorbehalten.</p>
	</div>
	</div>


</body>

</html>
```


----------



## Jonnsn (24. Jul 2007)

var f wird in der function pruefen() deklariert
damit ist sie - wenn ich mich da jetzt aus dem kopf nicht irren sollte - auch nur dort verfügbar ;-)


----------

