2013-03-05 22 views
0

我使用此功能與無序列表(<ul>)爲了複製選擇下拉元素的功能。該功能在指定的容器中檢查時正確顯示用戶選定的值,但未選中某項時不會將其刪除。修改此功能以刪除值,如果它們未選中

我已經包括下面的相關片段,並貼有完整的代碼在這裏工作的例子:http://jsfiddle.net/chayacooper/GS8dM/7/

JS

$(document).ready(function() { 
    $(".dropdown_box").click(function() { 
     $("#select_colors").show(); 
    }); 

    $(".dropdown_container ul li").click(function() { 
     var text = $(this.children[0]).find("input").val(); 
     var currentHtml = $(".dropdown_box span").html();   
     $(".dropdown_box span").html(currentHtml.replace('Colors', '')); 
     $(".dropdown_box span").append(', ' + text);    
    }); 
}); 

HTML

<div class="dropdown_box"><span>Colors</span></div> 
<div class="dropdown_container"> 
    <ul id="select_colors"> 
     <li><label><a href="#"><input type="checkbox" name="color[]" value="Black" />Black</a></label></li> 
    </ul> 
</div> 
+1

您看不到您正在檢查點擊事件後是否已經選擇了當前值。 – 2013-03-05 03:10:21

+1

你的HTML在那個小提琴中是一團糟。這裏(主要是?)清理:http://jsfiddle.net/GS8dM/9/ – isherwood 2013-03-05 03:13:27

回答

0

你應該給容器id到函數。然後,在添加選擇的文本之前,您應該確保它不在文本中。如果是,請刪除它。

相關問題