2011-12-23 127 views
0

我已經實現了一個函數u(),它可以將服務器的結果傳輸到外部,以便我可以從success:function()中完成某些操作。但是,我不知道如何從_pass獲得結果「y」。我曾嘗試過_pass.y但收到錯誤消息。 另外,「y」被成功分配。如何訪問對象的屬性?

var _pass = {}; 
_pass = function(y) { 
    alert(y); 
    return y; 
}; 

function u(pass) { 
    $.ajax({ 
     /* ... */ 

     success: function(html,pass) { 
      pass(html); 
     } 
});} 
+0

順便說一句.:的方法已選定的名字,而params都不好保持代碼的清晰! – Armin 2011-12-23 19:12:20

回答

0

試試這個:

var _pass = {}; 
_pass = function(y) { 
    console.log(y); 
    return y; 
}; 

function u(pass) { 
    var methodName = pass; 

    $.post(location.href, function(data) { 
     methodName(data); 
    }); 

} 
u(_pass); 

http://jsfiddle.net/nZnFM/8/

+0

也許你不需要變量methodName,也許你可以直接在ajax回調方法中使用pass參數。 – Armin 2011-12-23 19:15:16

+0

so ....我怎樣才能得到財產'y'? – panda 2011-12-24 05:33:17

+0

o.0沒有定義y屬性... – Armin 2011-12-24 12:01:59