[英]Pass an array from one function to another in jQuery
我的頁面有兩個功能。 函數A編譯一個數組,完成后顯示一個按鈕。 用戶單擊按鈕,該數組將傳遞到函數B中。我所擁有的只是函數A:
function createUploader(){
var fileArray = new Array();
var i = 0;
var running = 0;
var jList = $( "#list" );
var uploader = new qq.FileUploader({
element: document.getElementById('uploadDiv'),
listElement: document.getElementById('separate-list'),
action: './includes/ajaxUpload/upload.php',
sizeLimit: 10485760,
onSubmit: function(id, fileName){
running++;
},
onComplete: function(id, fileName, responseJSON){
fileArray[i] = fileName;
i++;
running--;
if(running==0){
$('#combineBtn').css("display","");
$.fancybox.resize();
$('#fancybox-content').width(290);
$('#fancybox-wrap').width(310);
$.fancybox.center
$('.qq-upload-button').width(290);
}
}
});
}
這有可能嗎? 做到這一點的最佳方法是什么?
只需在函數外部聲明數組,它們就可以被它們兩者訪問。
var myarray = [];
function foo(val) {
myarray.push(val);
}
function bar() {
alert (myarray);
}
進一步閱讀: http : //www.digital-web.com/articles/scope_in_javascript/
在功能A中創建按鈕時,您不能執行以下操作:
function function_a()
{
var theArray = [1, 2, 3, 4];
var theButton = $('<button>Click Me</button>');
theButton.click(function() { function_b(theArray) });
}
function function_b(myArray)
{
// Run function code here...
}
您可以將數組序列化為json,將其保存在隱藏字段的value屬性中,然后單擊按鈕時,讀取函數B中的隱藏字段值並反序列化JSON。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.