2012-10-18 41 views
5

我已經發現了一些針對此問題的修復程序,但它們並非特定於此。我讀過簡單的東西,如Sortable()需要小寫。當然,我沒有把它設置爲大寫字母。未捕獲的類型錯誤對象沒有可排序的方法

我已經有了這方面的工作,然後突然決定吐出來就行控制檯Uncaught TypeError: Object [object Object] has no method 'sortable'如下:210 correspondes到:

 

    // Line 210 is below 
    $('.sortable').sortable({ 
     stop: get_post_order 
    }).disableSelection(); 
    // Check new order 
    function get_post_order() { 
     var post_list = [], pids; 
     $('.inner-pop-list li a').each(function() { 
      pids = $(this).attr('rel'); 
      post_list.push(pids); 
     }); 
     $('.export').attr('href', '?format=pdf&pids='+post_list); 
    } 

應該更新post_list數組列表後就一直重新排序。 get_post_order根本沒有運行。我試過將功能直接添加到stop: function() {...}中,但仍然沒有改變。

任何想法,我很難過。

感謝

+3

你確定你的jquery和jquery-ui庫是正確加載的嗎? –

+0

那麼,這是工作之前,我沒有改變任何與該網站的部分。所以是的,我很確定。我會三重檢查。 – zilj

+0

一切看起來都很好。拖動事件的作品,所以我想它是加載.. – zilj

回答

2

已修復,有時從別人那裏獲得新鮮的方法會引導您找到答案。謝謝你的幫助。它讓我看看我的網站的標題。我注意到我已經在頭文件中添加了sortable()聲明。然後我引用了一個外部腳本(這是第210行)再次排序,導致衝突。

所以答案是,引用sortable()一次!

1

這可能是你的JavaScript代碼是不是內$(文件)。就緒,並且UI庫加載之前,正在執行。

+0

我試過了,沒有運氣那裏要麼.. – zilj

+0

似乎排序沒有定義,或尚未加載。我不知道,但這是一個典型的錯誤,當一個jquery模塊沒有加載。所以,也許你的jquery-ui沒有這個模塊(例如自定義的jquery-ui),或者你的代碼在加載jquery-ui之前運行。 – Blazes

+0

我找到了解決辦法,見下文。感謝大家的時間和意見。 – zilj

相關問題