2014-10-18 73 views
1

是否有可能構建一個metabox,它有幾個鏈接的選項?鏈接的metabox選項

說我有3種選擇可供選擇,與幾個選項:

選擇1:A1,A2,A3,A4

選擇2:B1,B2,B3,B4,B5

選擇3:C1,C2,C3

現在,當我選擇A1選項時,其他兩個選項的唯一可用選項爲例如B2,B4,B5和C1。等等,爲各種選擇。

問題是我可以很容易地創建這些選項,然後只是在說明什麼選項可以與其他選項一起使用。假設你選擇了A1和B1,但是B1不起作用,所以你不應該選擇它,我可以把它寫下來,但我認爲這不是很方便,而且人們有時懶得閱讀,所以它更容易限制這些選項。

可以這樣做嗎?如何? HTML操作或在PHP中使用switchif-else-if聲明?

回答

1

你需要鏈接的選擇,這裏有一個簡單的例子

$("#main").change(function(){ 
 
    $('.chain').fadeOut('slow'); 
 
    switch($(this).val()){ 
 
     case 'tutorials': 
 
      $('#tutorials').fadeIn('fast'); 
 
      break; 
 
     case 'articles': 
 
      $('#articles').fadeIn('fast'); 
 
      break; 
 
    } 
 
});
body { 
 
    padding:30px; 
 
    background-color: #D4DE8C; 
 
} 
 
select { 
 
    float:left; 
 
    clear:both; 
 
    margin: 5px; 
 
} 
 
.chain { 
 
    display:none; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select id="main"> 
 
    <option value="blog">Blog</option> 
 
    <option value="tutorials">Tutorials</option> 
 
    <option value="articles">Articles</option> 
 
</select> 
 
<select id="tutorials" class="chain"> 
 
    <option value="jquery">JavaScript » jQuery</option> 
 
    <option value="codeigniter">PHP » CodeIgniter</option> 
 
    <option value="wordpress">PHP » WordPress</option> 
 
    <option value="xhtml-css">XHTML/CSS</option> 
 
</select> 
 
<select id="articles" class="chain"> 
 
    <option value="security">Articles » Security</option> 
 
    <option value="design">Articles » Design</option> 
 
</select>

這裏是一個example using Ajax

+0

所以我需要添加jQuery代碼來管理案例? – 2014-10-18 15:42:47

+0

是的,如果你使用PHP,你將不得不重新加載頁面來顯示正確的下拉...不是很動態。 – brasofilo 2014-10-18 15:44:46

+0

我明白了,謝謝:) – 2014-10-18 15:56:04