2013-02-10 49 views
1

嗨,我有以下:

function sendUserfNotes() 
    { 
     $.ajax({ 
     type: "POST", 
     url: '/pcg/popups/grabnotes.php', 
     data: 
     { 
      'nameNotes': notes_name, 
     }, 
     success: function() { 

      } 
    }); 
    } 

我試圖發送一個值 - 在notes_name到PHP文件,所以我可以使用GET [「」 ]但我得到一個奇怪的錯誤 - Uncaught TypeError: Illegal invocation

的notes_name在基於腳本的底部限定,如果點擊一個鏈接

代碼:

$(document).ready(function() { 
    $(".NotesAccessor").click(function() { 
     notes_name = $(this).parent().parent().find(".user_table"); 
     run(); 
    }); 
    }); 

run()在Jquery UI中觸發一個對話框,並在出現錯誤時運行此函數。

我不知道我爲什麼得到這個?

大衛

UPDATE:

我計算過,它與JavaScript值定義爲「nameNotes」:在notes_name是這個代碼後確定,但認爲不應該的問題。那麼,我將如何分配JavaScript變量呢?

+0

可能是因爲'notes_name'是一個jQuery對象,無論jQuery如何對數據進行序列化,它都不喜歡它。你期望在服務器端獲得什麼價值? – 2013-02-10 02:28:47

+0

從一個PHP變量的名稱,所以JavaScript VAR將像大衛或東西 – 2013-02-10 02:30:35

+1

如果你想''_GET'的值,你應該使用'類型:「GET」'發送它爲GET而不是POST – subhaze 2013-02-10 02:30:35

回答

4

這是因爲你正在分配一個jQuery對象到notes_name,而不是一個字符串(或一些其他的基本類型,如int)。這會導致$.ajax調用失敗。根據.user_table元素包含的內容,使用.value().text()(或類似的東西)來提取所需的字符串,而不是使用jQuery對象。

+0

工作就像一個魅力謝謝我使用.text()...你是贏家:) – 2013-02-10 02:31:34