2009-10-08 22 views
0

我有一個腳本。它是代碼。原型序列化返回函數而不是序列化字符串

我有一個頁面。這是來自db的一些東西。有一個編輯按鈕。當按下時,彈出一個div並通過ajaxrequest填充表單字段 - 一個外部php文件。該表單有一個名稱,並且該名稱是nameEdit。在該表單上是一個調用js函數的按鈕,提交。在這個js函數是這樣的:

function testAdd(func,cid,itemid){ 

    var nameFormData = $('nameEdit').serialize; 
    var options = { 
     method:'post', 
     postBody:nameFormData, 
     onCreate: function() {alert('created request'+nameFormData)}, 
     onSuccess: function(transport){var container_div = $('completeDiv$i');container_div.update('<b>HOKAY!</b>');}, 
     onComplete: function(transport){var container_div = $('updatingDiv$i');Effect.toggle('transDiv$i','appear', { delay: 1.0 });container_div.update('');}, 
     onFailure: function(){alert('Something went wrong...')} 
    }; 

     new Ajax.Request('/clients/'+func+'/'+cid+'/'+itemid,options); 

}; 

如果我的onCreate把常規「海幌子」提示,它會提醒,因爲它應該。屁股,如果我再補充一點應該包含序列化數據的功能,它返回:

function() { 
return __method.apply(null, [this].concat($A(arguments))); 

}

也蛋糕:如果不是$('editName').serialize;,我有$('clientNameFirst').value;(輸入ID的內線之一editName表單),它將返回相關的值。 Halp?

Thx。

回答

2
var nameFormData = $('nameEdit').serialize(); 

您必須添加括號才能執行該函數,否則您將獲得函數本身。

+0

是的,我知道。我只是想看看這個地方是否有效;) 謝謝! – stormdrain 2009-10-08 21:16:10