0

我想讓我的jQuery UI自動填充結果可拖動。儘管我已經嘗試了幾種方法,但仍然無法正常工作。我需要協調每個可拖動元素的初始化,所以不幸的是this對我沒有用處。jQuery自動填充結果可拖動

這裏是我的方法:(簡體)

_renderItemData : function (ul, item) { 
    return $("<li />") 
    .data("ui-autocomplete-item", item) 
    .append("<a id='SearchResult"+item.number+"'><div style='vertical-align:middle;line-height:25px;font-size:25px;'><img src='" + item.icon + "' style='width:25px;position:relative;top:2.5px;'/><span style=''>" +item.label + "</span></div></a>") 
    .appendTo(ul); 

    $("#SearchResult"+item.number) 
     .draggable({ 
      helper:"clone", 
      stop: function(event, ui) { 
       alert("Dropped"); 
       doSomethingAndPassElementNumber(item.number); 
      } 
     }); 
}, 

有誰知道我可以實現我的目標是什麼?

在此先感謝!如果有任何問題,請提問,我很感激每一個有用的建議!

回答

1

我成立了一個小提琴: http://jsfiddle.net/T2WkF/6/

繼承人與列表項的工作自動完成用戶界面UI +功能,拖動一個例子。

HTML:

<div class="ui-widget"> 
    <label for="tags">Tags:</label> 
    <input id="tags" /> 
</div> 

的jQuery:

$(function() { 
    var availableTags = [{ 
     label: "foo", 
     desc: "1", 
     number: "0" 
    }, { 
     label: "foo1", 
     desc: "2", 
     number: "1" 
    }, { 
     label: "foo2", 
     desc: "3", 
     number: "2" 
    }]; 
    $("#tags").autocomplete({ 
     source: availableTags, 
     focus: function (event, ui) { 
      $('li.ui-menu-item a:contains("' + ui.item.value + '")').draggable({ 
       helper: "clone", 
       stop: function (event, ui) { 
        console.log($(this).text()); 
       } 
      }); 
     } 
    }); 
}); 

這是或多或少只是一個虛擬的,但我希望回答你的問題。

+0

感謝您的回放!它幾乎按照我想要的方式工作,但還不完全。 '//此處警告值 \t \t \t alert(ui.item.value); \t \t \t //但是在停止函數中我得到:「Uncaught TypeError:無法讀取未定義的屬性'值' $('li.ui-menu-item a:contains(」'+ ui.item.value + ')')')。draggable({helper:「clone」,stop:function(event,ui){alert(ui.item.value);}});' –

+0

保持小提琴更新您的代碼,請發送鏈接在共同體中,所以我們更容易幫助你解決更多的問題。 – ggzone

+0

這裏是我更新的代碼:http://jsfiddle.net/T2WkF/5/ –