烦躁不安,谢谢您一直以来一直为我提供的所有帮助。我对编码真的很陌生,但是我或多或少地了解了这一点,并从0(www.mundopedales.com)创建了一个网站
但是今天,我真的陷入了一种形式,我希望它执行两个操作,即向MySQL db发送数据并上传具有自定义名称的图像文件。我可以同时运行这两个程序,但不能同时运行(如果一个程序可以运行,而另一个不能)。
表单操作将运行此文件,我可以在其中发送自定义名称和图像的输入文本:
<form action="upload.php" id="send-bike" method="post" enctype="multipart/form-data">
<input type='text' name='newname' id='newname' placeholder='Image filename'/>
<input type="file" name="fileToUpload" id="fileToUpload">
按键:
<input id="postData" type="button" value = "post">
这就是Ajax代码,这是我感到好奇的地方:
$('#postData').click(function (e) {
e.preventDefault();
var newname = $('#newname').val();
var dataString = 'newname=' + newname;
$.ajax({
type: 'POST',
url: 'sendbike.php',
data: dataString,
success: function () {
$('#send-bike').submit();
//window.location.assign('http://www.mundopedales.com/crear-bicicletas.php');//if I untag this line I change upload.php to work and then sendbike.php runs....
}
});
});
不明白为什么要进行此更改,以及如何才能使它们同时运行。
在此先感谢您,我的英语不好(西班牙制造)。
最佳答案
请使用jQuery的.submit()
。
$('#send-bike').submit(function(){
var formData = new FormData($(this)[0]); /* DATA FROM THIS FORM */
$.ajax({
type: 'POST',
url: 'sendbike.php',
data: formData,
contentType: false,
processData: false,
success: function () {
alert('success uploading!');
}
});
return false;
});
只需将提交的数据处理到
sendbike.php
。