2012-11-26 211 views
0

我有一個下拉菜單。默認情況下,它只允許一個選項進行選擇。我想創建一個複選框,選中時應該更改該下拉菜單以允許選擇多個選項。有人能告訴我如何實現這一目標嗎?更改選擇標籤屬性值

<select id="test" name="host"> 
    <option value="host1">host1</option> 
    <option value="host2">host2</option> 
    ..... 
    ..... 
</select> 

我希望在檢查複選框時將其更改爲以下內容。

<select id="test" name="host" multiple="multiple"> 
    <option value="host1">host1</option> 
    <option value="host2">host2</option> 
    ..... 
    ..... 
</select> 

請幫我這樣做。

+0

你想在沒有頁面重新加載的情況下做到這一點? –

+0

@MikeBrant:不,根據是否勾選複選框。 – pradeepchhetri

+1

我想你沒有按照我的問題。我想知道你是否希望選中該複選框,並在沒有頁面加載的情況下更新頁面上的「select」(在這種情況下,您將需要使用javascript)。您的代碼中沒有JavaScript,因此您是否想要單擊複選框並重新加載頁面(例如,使用PHP修改HTML源代碼以添加'mulitple'),或者如果您希望在沒有笨拙的頁面重新加載的情況下執行此操作,目前尚不清楚。這聽起來像你想要的JavaScript,然後提出下一個問題 - 你想要直接的JavaScript還是你使用jQuery或類似? –

回答

3

您需要使用JavaScript that..use一個名爲 'JQuery的' 庫,這使得它很簡單..

$("#checkbox_id").change(function(){ 
    if($(this).is(':checked')) 
     $("#test").attr('multiple', 'multiple'); 
}); 

編輯:用於恢復回..

Working Demo

$("#checkbox_test").change(function(){ 
    if($(this).is(':checked')) 
     $("#test").attr('multiple', 'multiple'); 
    else 
     $("#test").removeAttr('multiple'); 
}); 
+0

取消選中該複選框後,應該再次恢復。我們如何實現這一目標? – pradeepchhetri

+0

更新答案和演示。 –