Я использую этот кусок JS:
$.get( "/upload/number.php", function( data ) {
alert( "Data Loaded: " + data );
});
Это вызывает вызов number.php, который возвращает число. В вышеприведенном сценарии я предупреждаю данные, чтобы проверить, работает ли это, и это так. В предупреждении я вижу номер.
Теперь я хочу отправить этот номер на другую страницу, я попробовал это следующим образом:
$('#file_upload').data('uploadifive').settings.formData = {
'number' : +data
};
Это не работает, Firebug говорит:
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>
Для вашей конкретной проблемы (слияния массивов) у вас есть несколько проблем. Во-первых, это область, поскольку 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>