我有一个简单的调用ajax将formdata传递给php
AJAX代码
$('#upload').on('change', function (e) {
e.preventDefault();
$('#texto').val($(this).val());
if ($('#lefectuado').css('display') === 'block') {
var file_data = $('#upload').prop('files')[0];
var form_data = new FormData();
form_data.append('file', file_data);
var session;
$.ajax({
url: "http://localhost/sitePAW/exam.php",
type: "post",
cache: false,
contentType: false,
processData: false,
data: form_data,
success: function (text) {
session = JSON.parse(text);
$("#Titulo").val(session.Title);
$("#Autor").val(session.Creator);
$("#Resumo").val(session.Description);
$("#Conteudo").val(session.Subject);
$("#Pl").val(session.Keywords);
}
});
但在它执行此操作后重新加载页面我该如何阻止它?
它发生了一件奇怪的事情,这只发生在谷歌浏览器
答案 0 :(得分:0)
是否有任何按钮或链接被点击?
从这段代码中我猜你有一个上传表单,当输入值发生变化时,你会自动通过ajax发送信息。
但是如果您实际上是在更改输入然后单击按钮(如上传按钮),则会自输入更改后首先调用此代码,然后在单击按钮后“on click”事件将会消失,但它没有被捕获,所以它只是加载一些超链接,默认情况下,如果没有设置只是重新加载页面。
通常人们会将默认超链接设置为“#”,因此如果页面重新加载到“locahost:8000 /#”之类的内容,那么这可能就是正在发生的事情。