Javascript 将JS数据发布到第B页
我使用这段JS:Javascript 将JS数据发布到第B页,javascript,php,jquery,Javascript,Php,Jquery,我使用这段JS: $.get( "/upload/number.php", function( data ) { alert( "Data Loaded: " + data ); }); 这将调用number.php,它将返回一个数字。在上面的脚本中,我提醒数据检查这是否有效,它确实有效。在警报中我看到了号码 现在我想把这个号码发送到另一个页面,我试着这样做: $('#file_upload').data('uploadifive').settings.form
$.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>
//
对于您的特定问题(合并阵列),您有几个问题。首先是范围,因为数据
不是全局的。然后您可以将变量的范围设置得更高:
<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>
//
在您的示例中,我将使用$.post(“/url/to/post”,$.extend({},formdata,number))发布数据;但是Uploadifive已经在$('file_upload')之后发送了数据;还有其他选择吗?我不完全理解你的代码tbh,我不知道它会在哪里再次发布。但是,是的,还有另一种方法,你可以在代码中设置更高的变量,如果我没有弄错的话,可以赋值。更新的代码。好的,这是有效的,只有一个问题:每次单击uploadbutton时,var returnednumber中的数字都必须更改。。现在var中只填充了一次代码。我怎样才能改变这个?好的,现在试试。我正在将uploadifive()
设置为$.get()
的回调。这意味着它将仅在收到请求后执行。以前的问题是它同时发送两个请求,因此第二个请求具有第一个请求的旧值。