2013-03-13 65 views
0

我有一個序列化可選,我想要一個功能,使其只能選擇一個列表項目在一次。我相信我有正確的代碼,但它不起作用。有人知道爲什麼選擇只有一個可選jQueryUI

這裏是我的javascript:

$(function() { 
    $("#selectable").selectable({ 
     stop: function() { 
      var result = $("#select-result").empty(); 
      $(".ui-selected", this).each(function() { 
       var index = $("#selectable li").index(this); 
       result.append(" #" + (index + 1)); 
      }); 
     } 
    }); 
}); 


$("#selectable").selectable({ 
     selected: function(event, ui) { 
      $(ui.selected).siblings().removeClass("ui-selected"); 
     } 
}); 

我從HTML可選擇如下。由於嵌套在<li>標籤中的元素可能存在問題?

<ul id="selectable"> 
    <li><a><img src="images/CacheMenuGoogleCache2.png", alt="Google Cache" class="button" id="Google Cache" height ="34px" /></a></li> 
    <li><a><img src="images/CacheMenuBingCache2.png", alt="Bing Cache" class="button" id="Bing Cache" height ="34px" /></a></li> 
    <li><a><img src="images/CacheMenuYahooCache2.png", alt="Yahoo Cache" class="button" id="Yahoo Cache" height ="34px" /></a></li> 
    <li><a><img src="images/CacheMenuWaybackMachine2.png", alt="WayBack Machine" class="button" id="WayBack Machine" height ="34px" /></a></li> 
    <li><a><img src="images/CacheMenuCoralCDN2.png", alt="CoralCDN" class="button" id="CoralCDN" height ="34px" /></a></li> 
    <li><a><img src="images/CacheMenuGigablast2.png", alt="Gigablast" class="button" id="Gigablast" height ="34px" /></a></li> 
    <li><a><img src="images/CacheMenuWebCite2.png", alt="Webcite" class="button" id="Webcite" height ="34px" /></a></li> 
</ul> 

我很感謝你的時間和你的幫助!

+0

當我嘗試在http://jqueryui.com/selectable/#serialize上的示例中選擇的函數時,它似乎按預期工作。當我點擊一個項目時,它會被選中,其他人將被取消選中。除非你期望別的嗎? – Bemmu 2013-03-13 05:54:33

+0

目標是一次只能選擇一個項目。這對你有用嗎? - 因爲我可以突出顯示並選擇多個。 – Dbz 2013-03-13 05:56:31

回答

3

好的,我發現了這個問題。我需要包括它像這樣在函數中:

$(function() { 
    $("#selectable").selectable({ 
     selecting: function(event, ui){ 
      if($(".ui-selected, .ui-selecting").length > 1){ 
        $(ui.selecting).removeClass("ui-selecting"); 
      } 
     } 
    }); 
}); 

此外,您可能會注意到的功能是有一點點不同。這是因爲其他功能會留下所選圖像。