【发布时间】:2015-03-11 08:31:00
【问题描述】:
我似乎无法向服务器发送任何数据。在我拥有的其他一些页面中,我什至可以做到。唯一的区别是我使用这种特殊形式的文件上传。在 chrome 中一切正常。
哪里出错了?
<script>
$( document ).ready(function() {
$("#addnewadform").submit(function(e){
e.preventDefault();
$.ajax({
cache:false,
url: "/call/insert-standart-add.call.php", //URL IS CORRECT
type: "post", // this is OK too
data: {submitStandartPost:'im sending the submit button value'}, //this is a super-simplified version of what i want the server to recieve
contentType: 'multipart/form-data',//i have tried a ton of different values for this
processData: false, //think this should be false for file uploads
success: function(data){
console.log(data);
if(data!==''){
console.log(data);
}else{
console.log("nothing was sent");
}
}
});
});
});
</script>
服务器没有收到任何内容,但正在调用脚本本身。
if(isset($_POST['submitStandartPost'])){
}else{
echo 'no input';
}
可能错误与文件上传无关。我试图删除文件上传和 enctype='multipar/bal bla bal'。只是行不通。没有记录错误
【问题讨论】:
-
查看浏览器的开发者工具。将
error方法添加到您的jQuery ajax 调用中。查看 JavaScript 控制台。它是否报告任何错误?查看“网络”选项卡。是否正在提出请求?它得到回应了吗?它们是否包含您期望的数据? -
使用 FormData var data = new FormData();
-
也许听起来很有趣,但尝试在 url (../call/insert-standart-add.call.php) 前添加 2 个点,希望对您有所帮助。
-
你能亲眼看看这个网站吗?在 chrome 和 firefox 中打开这个 borissprojects.com/standart-ad
-
我想通了!! Firefox 不发送提交输入值!有趣的为什么强硬
标签: php ajax firefox post send