2011-08-09 59 views
2

工作在一個應用程序,其中飛機裝載員將重量輸入多個單獨的托盤位置。通常有必要改變放置托盤的位置,所以我試圖修復它,以便將托盤從一個位置拖放到另一個位置。jQuery UI拖放輸入字段內容

我沒有直接處理輸入字段,而是選擇了暫時(可能是錯誤的)在每個輸入字段旁邊打開和關閉括號「[]」以用作句柄。每個句柄元素都有class ='drag1'。考慮下面的代碼:

alert($('.drag1').length); 
$('.drag1').draggable({helper:'clone'}); 
$('.drag1').droppable({ 
    drop: alert('here') 
}); 

頁面加載後,第一次警報正確地報告托盤位的正確數目(74),然後我立即得到第二警報「這裏」一次且僅一次。

我希望得到的是隻有當我放棄而不是在做任何事情之前我纔會得到第二次提醒。

拖動工作是因爲「[]」的克隆四處移動,但是當我將它放在另一個「[]」上時沒有任何反應。

現在的問題是:爲什麼在頁面加載的時候放下,而不是在放下拖拽時觸發?

也許我不能有一個可拖動和可拖動的元素?

任何想法將不勝感激。

Terry Liittschwager

回答

2

你實際上正在調用alert函數。相反,請這樣做:

drop: function() { alert('here'); } 
+0

非常感謝。這讓我經歷了第一個問題。我猜想,外掛是在頁面加載時需要查看放置事件來設置它,而我相信在實際放置之前它不會查看它。再次感謝! – Terry

+0

只要你看到「parens」,你實際上正在執行該功能。 – Beez