Ajax图像上传提交冲突与表单ajax - make .submit()函数仅适用于该表单

时间:2012-04-04 10:50:25

标签: javascript ajax forms jquery

在多页表单的中间,我有一个用户可以上传图像的部分,该图像是使用ajax直接预览的。但是,当用户上传图像时,实际表单本身也会尝试提交,我认为存在ajax冲突。这是我用于ajax图片上传的代码:

$(document).ready(function() { 
    $('#logo').live('change', function()            { 
        $("#prlogo").html('');
        $("#prlogo").html('<img src="../preview/loader.gif" alt="Uploading...."/>');
        $("#logoform").ajaxForm({
            target: '#prlogo'
        }).submit();
    });
}); 

这就是形式:

<form id="logoform" method="post" enctype="multipart/form-data" action='../preview/logo.php'>
    <input type="file" name="logo" id="logo" />
</form>

是否可以将.submit()链接到带有id logoform的表单?有没有其他方法我可以限制提交仅适用于图像上传而不是表单?

1 个答案:

答案 0 :(得分:0)

您可以尝试覆盖表单的提交功能,因此在调用submit之前,您需要设置如下所示的内容

$('form').submit(function () {
    $.ajax({
        url: this.action, type: this.method,
        data: $(this).serialize(), cache: false,
        success: function () {
            //Do upload of Image
           }
        }

        //Or upload image here
    });