php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 25.06.2011, 17:54  
Benutzer
 
Registriert seit: 03.04.2011
Beiträge: 89
PHP-Kenntnisse:
Anfänger
Anima ist zur Zeit noch ein unbeschriebenes Blatt
Standard Problem mit If-Abfrage

Guten Tag

Ich bin gerade dabei mir ein Script zu basteln, dass diverse quadratische Gleichungen löst, nur habe ich wohl irgendeinen kleinen Fehler im Script. Wenn ich über die Dropdown Box einen Gleichungstyp auswähle und dann bestätige, wird mir nur das zugehörige Formular für die Gleichung ax² + bx + c = 0 ausgegeben. Ich will es aber so, dass man das Formular bei Bedarf erneut über die Dropdown Box wechseln kann. Naja, ich glaube es liegt an meiner etwas wirren If-Abfrage:

Code:
<!DOCTYPE html>
<html>
	<head>
		<script type='text/javascript'>
		function setEquationType() {
			if(document.getElementById('2')) {
				document.getElementById('inputs').innerHTML = 'a = <input type=\'text\' id=\'a\'><br>b = <input type=\'text\' id=\'b\'><br>c = <input type=\'text\' id=\'c\'><br><br><b>Rechenweg:</b><br><textarea cols=\'25\' rows=\'10\' id=\'result\' disabled></textarea><br><br><b>Lösungsmenge:</b><br><input type=\'text\' id=\'finalresult\' disabled><br><br><input type=\'button\' value=\'Berechnen\' onclick=\'solveEquation(1);\'> <input type=\'reset\' value=\'Zurücksetzen\'>';
			}
			else if(document.getElementById('3')) {
				document.getElementById('inputs').innerHTML = 'p = <input type=\'text\' id=\'p\'><br>q = <input type=\'text\' id=\'q\'><br><br><b>Rechenweg:</b><br><textarea cols=\'25\' rows=\'10\' id=\'result2\' disabled></textarea><br><br><b>Lösungsmenge:</b><br><input type=\'text\' id=\'finalresult2\' disabled><br><br><input type=\'button\' value=\'Berechnen\' onclick=\'solveEquation(2);\'> <input type=\'reset\' value=\'Zurücksetzen\'>';
			}
			
			else if(document.getElementById('4')) {
				document.getElementById('inputs').innerHTML = 'd = <input type=\'text\' id=\'d\'><br>r = <input type=\'text\' id=\'r\'><br><br><b>Rechenweg:</b><br><textarea cols=\'25\' rows=\'10\' id=\'result3\' disabled></textarea><br><br><b>Lösungsmenge:</b><br><input type=\'text\' id=\'finalresult3\' disabled><br><br><input type=\'button\' value=\'Berechnen\' onclick=\'solveEquation(3);\'> <input type=\'reset\' value=\'Zurücksetzen\'>';
			}
			
			else if(document.getElementById('5')) {
				document.getElementById('inputs').innerHTML = 'r = <input type=\'text\' id=\'r2\'><br><br><b>Rechenweg:</b><br><textarea cols=\'25\' rows=\'10\' id=\'result4\' disabled></textarea><br><br><b>Lösungsmenge:</b><br><input type=\'text\' id=\'finalresult4\' disabled><br><br><input type=\'button\' value=\'Berechnen\' onclick=\'solveEquation(4);\'> <input type=\'reset\' value=\'Zurücksetzen\'>';
			}
			
			else if(document.getElementById('1')) {
				document.getElementById('inputs').innerHTML = '';
			}
		}
		</script>
		<style type='text/css'>
		</style>
		<title>QSolver</title>
	</head>
	<body>
		<b>Gleichungstyp auswählen:</b><br><br>
		<select>
			<option id='1'></option>
			<option id='2'>ax² + bx + c = 0</option>
			<option id='3'>x² + px + q = 0</option>
			<option id='4'>(x + d)² = r</option>
			<option id='5'>x² = r</option>
		</select>
		<input type='button' value='OK' onclick='setEquationType()'><br><br><br>
		<div id='inputs'>
		</div>
	</body>
</html>
Anima ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 25.06.2011, 20:06  
mn_
Benutzer
 
Registriert seit: 23.06.2011
Beiträge: 32
PHP-Kenntnisse:
Fortgeschritten
mn_ befindet sich auf einem aufstrebenden Ast
Standard

mit getElementById fragt man nicht den ausgewählten eintrag ab.
schau dir doch das einmal an:
http://de.selfhtml.org/html/formular...en_absendewert
mn_ ist offline   Mit Zitat antworten
Alt 26.06.2011, 10:21  
Benutzer
 
Registriert seit: 03.04.2011
Beiträge: 89
PHP-Kenntnisse:
Anfänger
Anima ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von mn_ Beitrag anzeigen
mit getElementById fragt man nicht den ausgewählten eintrag ab.
schau dir doch das einmal an:
http://de.selfhtml.org/html/formular...en_absendewert
Vielen Dank, das hat mir etwas weitergeholfen. Aber irgendwie will das Script trotzdem nicht funktionieren:

Code:
<!DOCTYPE html>
<html>
	<head>
		<script type='text/javascript'>
		function setEquationType(eqn) {
			if(eqn == 2) {
				document.getElementById('inputs').innerHTML = 'a = <input type=\'text\' id=\'a\'><br>b = <input type=\'text\' id=\'b\'><br>c = <input type=\'text\' id=\'c\'><br><br><b>Rechenweg:</b><br><textarea cols=\'25\' rows=\'10\' id=\'result\' disabled></textarea><br><br><b>Lösungsmenge:</b><br><input type=\'text\' id=\'finalresult\' disabled><br><br><input type=\'button\' value=\'Berechnen\' onclick=\'solveEquation(1);\'> <input type=\'reset\' value=\'Zurücksetzen\'>';
			}
			if(eqn == 3) {
				document.getElementById('inputs').innerHTML = 'p = <input type=\'text\' id=\'p\'><br>q = <input type=\'text\' id=\'q\'><br><br><b>Rechenweg:</b><br><textarea cols=\'25\' rows=\'10\' id=\'result2\' disabled></textarea><br><br><b>Lösungsmenge:</b><br><input type=\'text\' id=\'finalresult2\' disabled><br><br><input type=\'button\' value=\'Berechnen\' onclick=\'solveEquation(2);\'> <input type=\'reset\' value=\'Zurücksetzen\'>';
			}
			
			if(eqn == 4) {
				document.getElementById('inputs').innerHTML = 'd = <input type=\'text\' id=\'d\'><br>r = <input type=\'text\' id=\'r\'><br><br><b>Rechenweg:</b><br><textarea cols=\'25\' rows=\'10\' id=\'result3\' disabled></textarea><br><br><b>Lösungsmenge:</b><br><input type=\'text\' id=\'finalresult3\' disabled><br><br><input type=\'button\' value=\'Berechnen\' onclick=\'solveEquation(3);\'> <input type=\'reset\' value=\'Zurücksetzen\'>';
			}
			
			if(eqn == 5) {
				document.getElementById('inputs').innerHTML = 'r = <input type=\'text\' id=\'r2\'><br><br><b>Rechenweg:</b><br><textarea cols=\'25\' rows=\'10\' id=\'result4\' disabled></textarea><br><br><b>Lösungsmenge:</b><br><input type=\'text\' id=\'finalresult4\' disabled><br><br><input type=\'button\' value=\'Berechnen\' onclick=\'solveEquation(4);\'> <input type=\'reset\' value=\'Zurücksetzen\'>';
			}
			
			if(eqn == 1) {
				document.getElementById('inputs').innerHTML = '';
			}
		}
		</script>
		<style type='text/css'>
		</style>
		<title>QSolver</title>
	</head>
	<body>
		<b>Gleichungstyp auswählen:</b><br><br>
		<form>
			<select name='etype'>
				<option value='1'></option>
				<option value='2'>ax² + bx + c = 0</option>
				<option value='3'>x² + px + q = 0</option>
				<option value='4'>(x + d)² = r</option>
				<option value='5'>x² = r</option>
			</select>
			<input type='button' value='OK' onclick='setEquationType(document.form.etype.option[document.form.etype.selectedIndex].value)'><br><br><br>
		</form>
		<div id='inputs'>
		</div>
	</body>
</html>
Ich habe jetzt mal allen Option-Elementen ein Value gegeben und dann mittels OnClick-Event den ausgewählten Eintrag als Parameter übergeben. Dann wird oben im JavaScript geprüft, welches Value das ausgewählte Element hat.
Was ist da falsch?
Anima ist offline   Mit Zitat antworten
Alt 26.06.2011, 11:45  
mn_
Benutzer
 
Registriert seit: 23.06.2011
Beiträge: 32
PHP-Kenntnisse:
Fortgeschritten
mn_ befindet sich auf einem aufstrebenden Ast
Standard

2 fehler sind noch drin. entweder this.form oder document.forms[0] und dann fehlt noch ein s

Code:
setEquationType(document.forms[0].etype.options[document.forms[0].etype.selectedIndex].value)
gruß
mn_ ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem mit Abfrage - join, inner join, distinct? Gachet01 Datenbanken 2 27.01.2011 06:49
Problem mit SQL Abfrage Diamond GrafixX PHP Tipps 2009 13 29.08.2009 13:25
[Erledigt] Problem mit SELECT Abfrage BlackBroom Datenbanken 4 28.05.2009 14:13
Problem mit einer IF Abfrage! maclaim1988 PHP Tipps 2009 10 06.02.2009 17:33
Problem bei SQL Abfrage fdm Datenbanken 4 31.12.2008 15:01
MySQL Abfrage Problem mit Where parti02 Datenbanken 14 23.10.2008 14:52
[Erledigt] Syntax Problem bei (ODBC) MSAccess Abfrage Patrick H. Datenbanken 6 15.08.2008 09:50
[Erledigt] MySql Frage: Problem mit einer etwas lomplexeren Abfrage tomtaz Datenbanken 5 24.06.2008 22:36
Abfrage Problem mastermix Datenbanken 2 06.08.2007 11:45
Problem mit abfrage und co PHP Tipps 2005 6 29.03.2005 16:38
Problem bei benutzername und passwort abfrage ? PHP Tipps 2005 4 15.03.2005 17:29
Abfrage Problem (vermute ich) PHP Tipps 2004-2 3 14.12.2004 22:21
Problem mit abfrage Datenbanken 8 05.12.2004 12:46
[Erledigt] Mysql Abfrage Problem! PHP-Fortgeschrittene 5 27.11.2004 10:22
Problem mit SQL Abfrage Schiedsrichter Datenbanken 2 02.08.2004 07:52

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php onclick mit if abfrage <input type=\button\, button abfragen php \type=button\, php input if abfrage, php if abfrage button, if/else if abfrage formulare abfragen, if abfrage mit eingabefeld, php script, value if abfrage php, kleiner 0 if schleife php, html option mit if abfragen, if abfrage im body, value und if abfrage, formular javascript if, if abfrage php, html formular bei bedarf nochmal anzeigen, javascript if abfrage header body

Alle Zeitangaben in WEZ +2. Es ist jetzt 11:13 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum