[JAVASCRIPT]Mehrere Select Formularfelder dynamisch..????

08/15/2011 12:13 socressor#1
Hi Leutz,

hab ne Problem. Habe ca 8 Select Felder mit ungefähr 40 optionen.

Jetzt soll es so ablaufen das wenn man z.B. bei select feld eins eine Option gewählt hat, diese nichtmehr bei den anderen 7 zugänglich ist. Also deaktiviert oder unsichtbar gemacht wird. Habe schon einiges mit Vergleichsoperatoren probiert aber ist einfach zuviel code und klappt am Ende nicht.


Die selects hole ich mir mit dieser function:

JAVA
PHP Code:
function alertselected6(selectobj){
    
/*Anfang Funktion 1*/

if(selectobj.selectedIndex == 0){
document.getElementById('wert1').maxLength 4;
document.getElementById('wert1').size 4;
document.getElementById('wert1').value "";

}

HTML
PHP Code:
<select onChange="alertselected6(this)" id="first" name="1st">
<
option value="1">eins</option>
...
...
</
select

Hat da jemand eine Idee? Wäre sehr dankbar :S

edit: in jeden der 8 Select Felder sind die gleichen Optionen
08/15/2011 12:33 Kahjatzu#2
Vieleicht hilft dir das weiter:

PHP Code:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?option=elitepvpers" method="POST">
    <select name="SELECT_NAME" onchange="this.form.submit();">
        <option value="">Select Package:</option>
        <option value="OPTION_1">Package 1</option>
        <option value="OPTION_2">Package 2</option>
        <option value="OPTION_3">Package 3</option>
        <option value="OPTION_4">Package 4</option>
        <option value="OPTION_5">Package 5</option>
        <option value="OPTION_6">Package 6</option>
        <option value="OPTION_7">Package 7</option>
        <option value="OPTION_8">Package 8</option>
    </select>

<?
if($_POST["SELECT_NAME"] == "OPTION_1"){echo '    <input type="text" style="width: 300px;" value="You Selected Package 1" name="test">
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_2"){echo '    <font color="#FF0000">You Selected Package 2</font>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_3"){echo '    <big>You Selected Package 3</big>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_4"){echo '    <h2>You Selected Package 4</h2>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_5"){echo '    <font color="pink">You Selected Package 5</font>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_6"){echo '    <u>You Selected Package 6</u>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_7"){echo '    <b>You Selected Package 7</b>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_8"){echo '    <i>You Selected Package 8</i>
'
;}
?>
    <input type="submit" class="btn" name="submit" value="Absenden">
</form>
08/15/2011 12:59 socressor#3
Quote:
Originally Posted by Kahjatzu View Post
Vieleicht hilft dir das weiter:

PHP Code:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?option=elitepvpers" method="POST">
    <select name="SELECT_NAME" onchange="this.form.submit();">
        <option value="">Select Package:</option>
        <option value="OPTION_1">Package 1</option>
        <option value="OPTION_2">Package 2</option>
        <option value="OPTION_3">Package 3</option>
        <option value="OPTION_4">Package 4</option>
        <option value="OPTION_5">Package 5</option>
        <option value="OPTION_6">Package 6</option>
        <option value="OPTION_7">Package 7</option>
        <option value="OPTION_8">Package 8</option>
    </select>

<?
if($_POST["SELECT_NAME"] == "OPTION_1"){echo '    <input type="text" style="width: 300px;" value="You Selected Package 1" name="test">
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_2"){echo '    <font color="#FF0000">You Selected Package 2</font>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_3"){echo '    <big>You Selected Package 3</big>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_4"){echo '    <h2>You Selected Package 4</h2>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_5"){echo '    <font color="pink">You Selected Package 5</font>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_6"){echo '    <u>You Selected Package 6</u>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_7"){echo '    <b>You Selected Package 7</b>
'
;}
if(
$_POST["SELECT_NAME"] == "OPTION_8"){echo '    <i>You Selected Package 8</i>
'
;}
?>
    <input type="submit" class="btn" name="submit" value="Absenden">
</form>
sry leider nicht möchte das mit JS lösen aber danke trotzdem
08/18/2011 21:04 Cheriekeks#4
Hey,

hab mal fix blind was runtergetippt ohne test, was denkste über den Lösungsansatz:

HTML Code:
<script language="javascript" type="text/javascript">

	function disable(group, id){
		switch($group){
			case(0):
				document.getElementById('select1x'+id).disabled = true;
				// repeat for all groups expect the one which is selected
			break;
			case(1):
				document.getElementById('select0x'+id).disabled = true;
				// repeat for all groups expect the one which is selected
			break;
			// repeat case for each possible group
		}
		
	}

</script>

<form method="post" action="#">
<input name="group0" id="select0x0" type="radio" onSelect="disable('0','0')" value="" />
<input name="group0" id="select0x1" type="radio" onSelect="disable('0','1')" value="" />
<input name="group0" id="select0x2" type="radio" onSelect="disable('0','2')" value="" />
<input name="group0" id="select0x3" type="radio" onSelect="disable('0','3')" value="" />
<input name="group0" id="select0x4" type="radio" onSelect="disable('0','4')" value="" />
<input name="group0" id="select0x5" type="radio" onSelect="disable('0','5')" value="" />
<input name="group0" id="select0x6" type="radio" onSelect="disable('0','6')" value="" />
<input name="group0" id="select0x7" type="radio" onSelect="disable('0','7')" value="" />
<input name="group0" id="select0x8" type="radio" onSelect="disable('0','8')" value="" />
<input name="group0" id="select0x9" type="radio" onSelect="disable('0','9')" value="" />


<input name="group1" id="select1x0" type="radio" onSelect="disable('1','0')" value="" />
<input name="group1" id="select1x1" type="radio" onSelect="disable('1','1')" value="" />
<input name="group1" id="select1x2" type="radio" onSelect="disable('1','2')" value="" />
<input name="group1" id="select1x3" type="radio" onSelect="disable('1','3')" value="" />
<input name="group1" id="select1x4" type="radio" onSelect="disable('1','4')" value="" />
<input name="group1" id="select1x5" type="radio" onSelect="disable('1','5')" value="" />
<input name="group1" id="select1x6" type="radio" onSelect="disable('1','6')" value="" />
<input name="group1" id="select1x7" type="radio" onSelect="disable('1','7')" value="" />
<input name="group1" id="select1x8" type="radio" onSelect="disable('1','8')" value="" />
<input name="group1" id="select1x9" type="radio" onSelect="disable('1','9')" value="" />
</form>