繁体   English   中英

jQuery AJAX文件上传冻结

[英]jQuery AJAX File Upload Freezes

我正在使用jQuery的ajax函数上传文件。 文件上传可以正常工作,并且数据可以正确发送,但是HTML不会更新。 提交表单后,不会重新启用按钮,并且控制台中显示错误:“未捕获的SyntaxError:意外的标识符”。 错误的行号是我的HTML文档的第一行。

这是我的JavaScript代码:

jQuery(function($) {
    $('form[data-async]').on('submit', function(e) {
        var $form = $(this);
        var $target = $($form.attr('data-target'));
        $form.find('button').attr('disabled', 'disabled');
        $.ajax({
            url: $form.attr('action'),
            type: $form.attr('method'),
            data: new FormData(this),
            processData: false,
            contentType: false,
            success: function(data, status) {
                $target.html(data.response).css('display', 'block');
                $form.find('button').removeAttr('disabled');
            },
            error: function(data, status) {
                $target.html(data.response).css('display', 'block');
                $form.find('button').removeAttr('disabled');
            }
        });
        e.preventDefault();
    });
});

来自服务器的JSON响应也不会显示。 这是我的PHP代码的响应:

return Response::json(['response' => 'Image has been uploaded! <script>window.location.href="/image/"' . $filename . '"</script>']);

是什么导致引发错误并且没有显示响应?

我会看一下jquery的各行,您似乎已经退回去编写PHP代码了:

$target
$form 

SB $ .target或$('#target')或类似名称,对吗?

解决了问题。

return Response::json(['response' => 'Image has been uploaded! <script>window.location.href="/image/"' . $filename . '"</script>']);

return Response::json(['response' => 'Image has been uploaded! <script>window.location.href="/image/' . $filename . '"</script>']);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM