Попытка запустить действие PHP, когда выбрано раскрывающееся значение

1

Я пытаюсь отобразить новое раскрывающееся меню формы, если выбрана определенная альтернатива выпадающего списка. Это код, который я запускаю до сих пор без результатов:

        <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;

                 }
                 ?>
  • 0
    вы не можете получить значение $ _POST ['Universitet'] без отправки формы
Теги:

3 ответа

0

Переменная $ _POST принимает значение параметра.

So Use this code 

 case 3 :

Remove 
case 'Høgskolen i Hedmark':
0

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>
  • 0
    Вы не можете сделать это без того, после выбора вы отправляете форму.
0

Значение переменной $_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.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню