是否可以通过jquery中的ajaxSubmit()或ajaxForm()方法传递预取的数据

时间:2013-07-10 06:29:26

标签: jquery ajax

我正在尝试使用ajaxSubmit()通过ajax实现表单提交。我从表单中获取值并存储在'data'变量中并尝试使用ajaxSubmit()函数传递,是否可能或者是否有其他方法或插件来执行此操作。

我的HTML代码是

<form action="pro.php" method="post" id="upform">
    <input type="text" name="name" id="name" />
    <input type="file" name="up" id="up" />
    <input type="submit" value="submit" id="submit" />
</form>

jquery代码是

 $(document).ready(function () {
    $("#upform").submit(function (e) {
        e.preventDefault();
        var name = $("#name").val();
        var file = $("#up").val();
        var data = "name=" + name + "&file=" + file;
        $(this).ajaxSubmit({
            dataType: 'json',
            url: 'pro.php',
            data: data,
            success: function (a) {
                alert(a.msg);
            },
            complete: function () {
                alert('complete process');

            }
        });

1 个答案:

答案 0 :(得分:0)

看起来你正在使用ajax方法上传文件...这是不可能的......如果使用XHR2,使用FormData对象支持通过AJAX上传文件,但不幸的是,所有/旧浏览器都不支持

您需要使用iframe通过ajax上传文件或使用可用的插件......

ajax upload:简单的jquery基础文件上传器..易于使用..

uploadify:jquery文件上传插件使用HTML5和flash