Я пытаюсь отобразить новое раскрывающееся меню формы, если выбрана определенная альтернатива выпадающего списка. Это код, который я запускаю до сих пор без результатов:
<p><span>Hogskole</span><select id="selectbasic" name="Universitet"></p>
<option value=1>Høgskolen i Lillehammer</option>
<option value=2>Høgskolen i Gjøvik</option>
<option value=3>Høgskolen i Hedmark</option>
<?php switch($_POST['Universitet']){
case 'Høgskolen i Hedmark':
echo '<p><span>Hogskole</span><select name="Universitet"></p>
<option>Option One</option>
<option>Option Two</option>
<option>Option Three</option>';
break;
default:
break;
}
?>
Переменная $ _POST принимает значение параметра.
So Use this code
case 3 :
Remove
case 'Høgskolen i Hedmark':
Php не является управляемым событиями языком для обработки клиентской стороны, вы должны использовать jquery и AJAX
<script>
function changeState(){
var countryId='';
selectId=$("#selectbasic").val();
$.ajax({
url: 'getStateList.php',
type:'post',
data: {
selectId: selectId
},
success: function(data) {
$("#state").html(data);
},
});
}
</script>
Значение переменной $_POST
будет содержать значение параметра. Вместо
case 'Høgskolen i Hedmark':
использование
case 3:
Обычно я предпочитаю использовать числовые/идентификационные значения для выбранных опций, потому что их очень трудно соблюдать. Вы можете рассмотреть возможность его изменения со строкой, например:
<select id="selectbasic" name="Universitet"></p>
<option value="Lillehammer">Høgskolen i Lillehammer</option>
<option value="Gjøvik">Høgskolen i Gjøvik</option>
<option value="Hedmark">Høgskolen i Hedmark</option>
</select>
<?php
switch($_POST['Universitet']) {
case 'Hedmark':
echo '<p><span>Hogskole</span><select name="Universitet">
<option>Option One</option>
<option>Option Two</option>
<option>Option Three</option>
</select></p>';
break;
case 'Lillehammer':
default:
// echo something else
}
?>
Вы можете использовать такое поведение только в том случае, если вы отправляете форму на текущую страницу перед предоставлением данных. В противном случае вы должны пойти и искать события javascript.