2017-06-14 78 views
0

我希望能夠爲選擇選項添加div並在選擇下拉列表中將其禁用。啓用在按鈕上選擇選項點擊

這個我有工作,有一個刪除按鈕,但是我想重新啓用選擇選項,如果按下刪除按鈕 - 這是我迄今無法做到的。

任何人都可以提供幫助嗎?

jQuery解決方案首選,但JavaScript解決方案也不錯。打開解決方案,如隱藏/顯示,而不是禁用/啓用。

$('select').on('change', function(e) { 
 
    $('#here').append('<div>' + $(this).val() + '<button>DELETE</button> </div>'); 
 
    $('option:selected', this).attr('disabled', true); 
 
}); 
 

 
$("div").on("click", "button", function(e) { 
 
    e.preventDefault(); 
 
    var value = $(this).val(); 
 
    $('select').find($('option:selected', this)).attr('disabled', false); 
 
    $(this).parent().remove(); 
 
});
div { 
 
    border: 1px solid #999; 
 
    padding: 15px 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<select> 
 
    <option>Please select one</option> 
 
    <option>Volvooooo</option> 
 
    <option>Saaaaaab</option> 
 
    <option>Mercedeeeeeeees</option> 
 
    <option>Audiiiiiii</option> 
 
    </select> 
 

 
<div id="here">Nothing selected yet</div>

需要注意的是,據我所知,這不是一個重複的問題 - 它已被標記爲大部分重複肯定不會涉及到我的問題的問題,這是特別關於刪除按鈕點擊禁用的屬性。請不要關閉我的問題,除非你真的找到了適當的副本(我不能在近兩個小時的搜索過程中)。

+0

你覺得呢'this'是在單擊事件處理程序? – Musa

+0

@Musa - 刪除按鈕? – iwillbeawebdeveloper

+0

但你用它來找到一個選項後代這裏'$('option:selected',this)'這裏沒有這個'$(this).val()'它沒有的值 – Musa

回答

0

將布爾值更改爲false而不是true。

$('option:selected', this).attr('disabled', false);