我的表单无法正确发送文件,发送图像时脚本js可能出错

问题描述 投票:0回答:1

我正在制作一个表单,我必须在其中发送图像,用户和密码,这是通过返回php脚本响应的JavaScript发生的,但是在php脚本中,我需要使用$ _FILE,但是这不会产生响应,但是,如果我注释JavaScript代码$FILES的工作,而我忘记了问题出在这一代码中,但是我没有给出答案。 (对不起,我的英语,请使用翻译器)

代码:

JavaScript:

$("#form").submit(function () {
    var a = $(this).attr("action");
    $("#regmessage").slideUp(750, function () {
        $("#message").hide();
        $("#submit").attr("disabled", "disabled");
        $.post(a, {
            user: $("#user").val(),
            pass: $("#pass").val(),
            avatar: $("#avatar").val(),

        }, function (a) {
            document.getElementById("message").innerHTML = a;
            $("#message").slideDown("slow");
            $("#submit").removeAttr("disabled");
            if (null != a.match("success")) $("#form").slideDown("slow");
        });
    });
    return false;
});

$("#form input, #form textarea").keyup(function () {
    $("#message").slideUp(1500);
});

$('.chosen-select').selectbox();

php(仅用于测试$_FILES是否有效::

echo $_FILES["avatar"]["tmp_name"];

HTML:

<div id="message"></div>
<form action="php/subiravatar.php" method="POST" name="form" id="form" enctype="multipart/form-data">

    <label><i class="fal fa-user"></i></label>
    <input type="text" name="user" id="user" placeholder="Usuario *" value=""/>

    <label><i class="fal fa-key"></i></label>
    <input type="password" name="pass" id="pass" placeholder="Contraseña *" value=""/>

    <img id="avatarPrevisualizacion" style="width: 100px; height: 100px;">
    <input type="file" id="avatar" name="avatar">
    <label  for="avatar"><strong>Sube tu avatar...</strong></label>

    <button name="submit" id="submit">Registrarse</button>

</form>
javascript ajax
1个回答
0
投票

看起来像是这个问题的重复,有一个答案(没有插件,JQuery不允许这样做):PHP file-upload using jquery post

© www.soinside.com 2019 - 2024. All rights reserved.