2013-12-15 63 views
0

我用這塊JS的:郵政JS數據指向網頁B

$.get("/upload/number.php", function(data) { 
     alert("Data Loaded: " + data); 
     }); 

這使得調用number.php,至極返回一個數字。在上面的腳本中,我提醒數據檢查這是否正常工作,並且確實如此。在警報中我看到了這個數字。

現在我想發送該號碼到另一個頁面,我想這樣說:

$('#file_upload').data('uploadifive').settings.formData = { 
    'number'  : +data 
}; 

這不是工作,螢火說:

SyntaxError: missing } after property list 


'number' : data 

我怎樣才能使這項工作?

完整的腳本:

<script type="text/javascript"> 
//<![CDATA[ 
$(function() { 
    // Initialiseer uploadifive 
    $('#file_upload').uploadifive({ 
     'auto'    : false, 
     'checkScript'  : '/uploadifive/Sample/check-exists.php', 
     'onFallback'  : function() { 
            window.location = '/home.php'; 
           }, 
     'method'   : 'POST', 
     'queueID'   : 'queue', 
     'uploadScript'  : '/upload/uploadifive.php', 
     'removeCompleted' : true, 
     'onUploadComplete' : function (file, data) { 
            console.log(data); 
           } 
    }); 
    // Hang een click-event aan de knop 
    $('#subby').on('click', function() { 

    $.get("/upload/number.php", function(data) { 

     alert("Data Loaded: " + data); 

     }); 


     // Werk formData van uploadifive bij met de betreffende waarden 
     $('#file_upload').data('uploadifive').settings.formData = { 

      'number'  : data 

     }; 
     // Voer de upload uit 
     $('#file_upload').uploadifive('upload'); 
    }); 
}); 
//]]> 
</script> 

回答

0

爲了您的具體問題(合併數組),你有幾個問題。首先是範圍,因爲data不是全球性的。然後你可以merge the data或設置您的變量更高的範圍:

<script type="text/javascript"> 
//<![CDATA[ 
$(function() { 
    // Initialiseer uploadifive 
    $('#file_upload').uploadifive({ 
     'auto'    : false, 
     'checkScript'  : '/uploadifive/Sample/check-exists.php', 
     'onFallback'  : function() { 
            window.location = '/home.php'; 
           }, 
     'method'   : 'POST', 
     'queueID'   : 'queue', 
     'uploadScript'  : '/upload/uploadifive.php', 
     'removeCompleted' : true, 
     'onUploadComplete' : function (file, data) { 
            console.log(data); 
           } 
    }); 
    // Hang een click-event aan de knop 
    $('#subby').on('click', function() { 
     $.get("/upload/number.php", function(returnednumber) { 
      // Werk formData van uploadifive bij met de betreffende waarden 
      $('#file_upload').data('uploadifive').settings.formData = { 
       'number': returnednumber 
       }; 
      }); 

      // Voer de upload uit 
      $('#file_upload').uploadifive('upload'); 
     }); 
    }); 
//]]> 
</script> 
+0

在您的例子我會用後.post的$的數據( 「/ URL /到/後」,$ .extend({},FORMDATA,數)); 但是Uploadifive已經在$('#file_upload')。uploadifive('upload'); 還有其他的選擇嗎? –

+0

我並沒有完全禁止你的代碼tbh,我沒有看到它再次發佈的地方。但是,是的,還有另一種方法,您可以在代碼中將變量設置得更高,如果我沒有弄錯,可以指定它。更新的代碼。 –

+0

好吧,這是有效的,只有一個問題: var returnednumber中的數字必須在每次點擊上傳按鈕時更改。 現在,var僅填充一次代碼。 我該如何改變這一點? –