2014-10-19 19 views
0

當我在不提交POST請求的情況下更改第一個選項I,IV和V時,如何更改爲案例1或案例2?如何提交沒有發佈需求的選擇?

<select name="vrsta_predmenta"> 
    <option value="1">I</option> 
    <option value="2">IV</option> 
    <option value="3">V</option> 
</select> 
<select name="izvrsenje"> 
<?php 
    switch($_POST['vrsta_predmenta']){ 
     case 1: 
      echo '<option value="1">Prvo izvrsenje</option>'; 
      echo '<option value="2">Drugo izvrsenje</option>'; 
      echo '<option value="3">Trece izvrsenje</option>'; 
      break; 
     case 2: 
      echo '<option value="1">Cetvrto izvrsenje</option>'; 
      echo '<option value="2">Peto izvrsenje</option>'; 
      echo '<option value="3">Sesto izvrsenje</option>'; 
      break; 

    } 
?> 
</select> 
+0

無需重新加載頁面,你會需要一些JavaScript – Philibobby 2014-10-19 19:32:46

+0

你想,如果改變了發送數據? – 2014-10-19 19:32:49

回答

1

您需要的JavaScript這一點。以下是一個非常簡單的方法示例,當您將所有選項都已經存在但隱藏起來時,並根據主選擇框中的選定選項顯示必要時。

var main = document.querySelector('.main'), 
 
    secondary = document.querySelector('.secondary'); 
 

 
main.onchange = function() { 
 
    var mainValue = main.options[main.selectedIndex].value; 
 
    [].slice.call(secondary.options).forEach(function(option) { 
 
     option.hidden = option.className !== 'value-' + mainValue; 
 
    }); 
 
    
 
    secondary.options[0].hidden = false; 
 
    secondary.options[0].selected = true; 
 
};
<select name="vrsta_predmenta" class="main"> 
 
    <option value="1">I</option> 
 
    <option value="2">IV</option> 
 
    <option value="3">V</option> 
 
</select> 
 

 
<select name="izvrsenje" class="secondary"> 
 
    <option value="">-- Select --</option> 
 
    <option value="1" class="value-1" hidden>Prvo izvrsenje</option> 
 
    <option value="2" class="value-1" hidden>Drugo izvrsenje</option> 
 
    <option value="3" class="value-1" hidden>Trece izvrsenje</option> 
 
    <option value="1" class="value-2" hidden>Cetvrto izvrsenje</option> 
 
    <option value="2" class="value-2" hidden>Peto izvrsenje</option> 
 
    <option value="3" class="value-2" hidden>Sesto izvrsenje</option> 
 
</select>

+0

如何刪除選定的選項表單2.選擇何時選擇1.選擇更改?當我從第一選擇改爲第一選項時,第二選擇仍然保持'Prvo izvrsenje'... – user3561857 2014-10-19 19:52:18

+0

有效分數。查看更新的答案。 – dfsq 2014-10-19 20:06:16

0

您目前正在混合html和php。

爲了您的需要,您需要在html頁面中實現javascript。你的代碼將無法工作,因爲php在服務器端,而不是在客戶端。

+0

你有一些例子嗎? – user3561857 2014-10-19 19:36:58

0

你可以試試這個

<select name="vrsta_predmenta" id='sendRequest'> 
          <option value="1" >I</option> 
          <option value="2">IV</option> 
          <option value="3">V</option> 
         </select> 


jQuery('#sendRequest').change(function(){ 
    jQuery.ajax({ 
     url:'your php file url', 
     type:'post', 
     data:{data:jQuery(this).val()}, 
     dataType:'JSOON', 
     success:function(){ 
     } 
    }) 
}) 
+0

取決於上面的選項,我需要在另一個選擇中獲得antoher選項。 – user3561857 2014-10-19 19:42:54

相關問題