Ich versuche, die Optionen einer Combobox zu verschwinden, abhängig von der vorgewählten Option, die aus der Datenbank kommt.Wie bekomme ich den Wert von einer Combobox in PHP
Als ich die gleiche Frage zuvor gestellt habe, wurde mir die Idee gegeben, zwei Comboboxen zu verwenden, und abhängig vom Wert des ersten würden Optionen auf dem zweiten verschwinden. Und das hat funktioniert, aber das Problem mit einer JScript-Funktion ist, dass ich es mit einem Onchange-Ereignis aufrufen muss, was bedeutet, dass es nicht von einer vorherigen Seite geladen werden konnte.
Es wird verwendet wie folgt aussehen:
<select name="cbostatusHide" id="cbostatusHideID" onchange="getDropDown()">
<option selected "" ></option>
<option value="Planned"<?php if ($row['task_status']=='Planned') echo 'selected="selected"';?>>Planned</option>
<option value="Started"<?php if ($row['task_status']=='Started') echo 'selected="selected"';?>>Started</option>
<option value="Available"<?php if ($row['task_status']=='Available') echo 'selected="selected"';?>>Available</option>
<option value="Impeded" <?php if ($row['task_status']=='Impeded') echo 'selected="selected"';?>>Impeded</option>
<option value="Finished"<?php if ($row['task_status']=='Finished') echo 'selected="selected"';?>>Finished</option>
</select>
</td>
</tr>
<tr>
<td>
<select name="cbostatus" id="cbostatusID">
<option selected "" ></option>
<option value="1" <?php if ($row['task_status']=='Planned') echo 'selected="selected"';?>>Planned</option>
<option value="2" <?php if ($row['task_status']=='Started') echo 'selected="selected"';?>>Started</option>
<option value="3" <?php if ($row['task_status']=='Available') echo 'selected="selected"';?>>Available</option>
<option value="4" <?php if ($row['task_status']=='Impeded') echo 'selected="selected"';?>>Impeded</option>
<option value="5" <?php if ($row['task_status']=='Finished') echo 'selected="selected"';?>>Finished</option>
</select>
</td>
</tr>
und die Funktion:
function getDropDown() {
var optionDrop = document.getElementById("cbostatusHideID");
var numberDrop = document.getElementById("cbostatusID");
if (optionDrop.options[optionDrop.selectedIndex].value == "Planned" || optionDrop.options[optionDrop.selectedIndex].value == "Started" || optionDrop.options[optionDrop.selectedIndex].value == "Available"){
numberDrop.options[4].style.display = "none";
}else if (optionDrop.options[optionDrop.selectedIndex].value == "Impeded" || optionDrop.options[optionDrop.selectedIndex].value == "Finished"){
numberDrop.options[4].style.display = "block";
}
}
Was dies tat, war die "Erschwerte" Option nicht zur Verfügung stellen, wenn ich entweder "Gestartet" ausgewählt „Planned "oder" Verfügbar ".
Aber zu dem Mangel an Erfolg, die ich in der Anfang der Frage erklärt habe, entschied ich, das gleiche logische Konzept anzuwenden, aber mit Switches in PHP.
Das große Problem ist, ich bin ein absoluter Anfänger bei PHP, und ich weiß nicht, wie man das richtig macht, so dass es nicht funktioniert. Hier ist, was ein bisschen Fummelei hat mich herum:
<?php
switch (cbostatusHideID.selectedIndex)
{
case $row['task_status'] == 'Planned';
cbostatus.option[4].style.display = "none";
}
?>
Wie Sie mehr erfahrene PHP-Anwender können sich wahrscheinlich sagen, das überhaupt nicht funktionieren. Wie ändere ich es und mache es zu einem richtigen Switch?
Sie bitte auch, schlagen nicht Jquery verwenden, wie wir es nicht wirklich hier bei der Arbeit ...
Oh, ok, ich verstehe, aber in diesem Fall, wie wähle ich den Combobox-Wert, den ich im Switch deaktivieren möchte? – RazorFinger