2012-08-17 15 views
0

我真的很新的JavaScript,所以很抱歉我的無知。在jeditables中,你可以指定一個回調函數。我在一個單獨的腳本中使用所有這些代碼。有沒有辦法將變量傳入此回調函數?例如: var info =「foo」;訪問其他變量裏面的可jeditable

$('#bar').editable("/foo/bar", 
    callback : function(value, settings) { 
     var foobar = value + info; 
}); 

回答

1
var info = "foo"; 
$('#bar').editable("/foo/bar", 
    function(value, settings) { 
     var foobar = value + info; 
}); 

你應該對JavaScript的作用域讀了。

我上面做的是不是通常要走的路,因爲info現在處於全球範圍。


麪點:

你甚至可以打動你的回調到一個完全不同的位置:

var info = "foo", 
    callBackFn = function(v, s){ 
     var foobar = v + info; 
    }; 
$('#bar').editable("/foo/bar", callBackFn); 
+0

是的,我真的這樣做。我現在正在閱讀。謝謝您的幫助。 – user197674 2012-08-17 18:31:16

0

您也可以指定屬性「設置」對象,如下所示:

$(".myClass").editable("/foo/bar", 
{ 
    indicator: "Saving...", 
    tooltip: "Click to edit", 
    onblur: "submit", 
    bax: bax 
}, 
function(value, settings) { 
    var foobar = value + settings.bax; 
}); 

內部處理程序,你可以通過簡單地說明0123看到使用的參考對象