欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

javascript - 多图片上传预览和ajax发送的问题

程序员文章站 2022-06-06 18:57:48
...
我现在做一个图片发送的功能,但是预览的都是最后选择的照片,并且所有的照片都一样,还有就是图片上传该怎么用ajax发送,多谢了。以下是代码:
HTML代码:

js代码:
这是图片预览部分js代码

$(function(){
    $("input[type='file']").change(function(evt){
        var files = evt.target.files;
    
        for (var i = 0, f; f = files[i]; i++) {
    
            if (!f.type.match('image.*')) {
                continue;
            }
    
            var reader = new FileReader();
            reader.readAsDataURL(f);
            reader.onload = (function() {
                return function(e) {
                    $(".upload-ul").prepend("
  • javascript - 多图片上传预览和ajax发送的问题
  • "); $(".upload-ul img").attr("src",e.target.result);//预览图片的位置 }; })(f); } }); })

    这是ajax发送部分代码:

    $("#upload-btn").click(function(){
        var formData = $("imglist").attr('name');
        formData.append('img',fileData);
        $.ajax({
            type: "POST",
            url: "{{ path('advsimghandle_') }}",
            dataType:"json",
            data:{
                imageUpload: formData
            },
            success:function(msg){
    
            }
        })
    })

    请问我改怎么获取这个name的属性?还有文件预览都是预览到同样的一张图片,譬如说我选择两张图片,结构都是预览到第二张,第一张好像是循环的时候被过滤掉了,是不是该判断还是?,我改怎么改这个代码才能分别预览到照片。另外ajax也有问题的,通过firebug查看是没有post东西到后台的。多谢了。

    回复内容:

    我现在做一个图片发送的功能,但是预览的都是最后选择的照片,并且所有的照片都一样,还有就是图片上传该怎么用ajax发送,多谢了。以下是代码:
    HTML代码:

    js代码:
    这是图片预览部分js代码

    $(function(){
        $("input[type='file']").change(function(evt){
            var files = evt.target.files;
        
            for (var i = 0, f; f = files[i]; i++) {
        
                if (!f.type.match('image.*')) {
                    continue;
                }
        
                var reader = new FileReader();
                reader.readAsDataURL(f);
                reader.onload = (function() {
                    return function(e) {
                        $(".upload-ul").prepend("
  • javascript - 多图片上传预览和ajax发送的问题
  • "); $(".upload-ul img").attr("src",e.target.result);//预览图片的位置 }; })(f); } }); })

    这是ajax发送部分代码:

    $("#upload-btn").click(function(){
        var formData = $("imglist").attr('name');
        formData.append('img',fileData);
        $.ajax({
            type: "POST",
            url: "{{ path('advsimghandle_') }}",
            dataType:"json",
            data:{
                imageUpload: formData
            },
            success:function(msg){
    
            }
        })
    })

    请问我改怎么获取这个name的属性?还有文件预览都是预览到同样的一张图片,譬如说我选择两张图片,结构都是预览到第二张,第一张好像是循环的时候被过滤掉了,是不是该判断还是?,我改怎么改这个代码才能分别预览到照片。另外ajax也有问题的,通过firebug查看是没有post东西到后台的。多谢了。