您的位置:首页 > Web前端 > JavaScript

JS form表单图片上传

2016-10-11 18:36 148 查看
1 // 点击file 类型的input 触发的方法
2
3 function changesProvider(){
4
5   // fileProvider -> input中的name属性值 
6
7   var f = document.getElementByName("fileProvider")[0].files;
8
9   // 图片大小判断
10
11   if( f[0].size. > 1024*3*1024 ){
12
13        // 清空form表单中的结构
14
15     $("#formBoxProvider").children.remove();
16
17     // 把原先得结构重新动态添加进去
18
19     $("#formBoxProvider").append( "<label for='uploadProvider' class='label_bg'></label><input id='uploadProvider' onchange='changesProvider()' name='fileProvider' type='file' accept='.jpg, .jpeg, .png'>" );
20
21     message({
22
23       type: "error",
24
25       message: "图片文件不能大于3M"
26
27     })
28
29     return false;
30
31   }
32
33      //先new一个formData对象
34
35   var formData = new FormData( $("#formBoxProvider")[0] );
36
37   //ajax交互
38
39    $.ajax({
40
41     type: 'POST',
42
43     url: '${pageContext.request.contextPath}' + 'serve/provider/image/upload.shtml',
44
45     data: formData,
46
47     contentType: false,
48
49     processData: false,
50
51     success: function (data) {
52
53       if( data.errno == 1 ){
54
55         // 成功必须再次清空form表单中的DOM结构
56
57          // 清空form表单中的结构
58
59         $("#formBoxProvider").children.remove();
60
61         // 把原先得结构重新动态添加进去
62
63         $("#formBoxProvider").append( "<label for='uploadProvider' class='label_bg'></label><input id='uploadProvider' onchange='changesProvider()' name='fileProvider' type='file' accept='.jpg, .jpeg, .png'>" );
64
65         var imagePath = imageUrl + data.data;
66
67         //盒子中具体图片元素
68         var imageItem = "<div class='item-box'><span class='detele_sign'><img class='pImage' src='" + imagePath + "'></span></div>";
69         #("upload-sign").before(imageItem);
70         $(".detele_sign").on("click", function(){
71
72                $(this).parents('.item-box').remove(); 
73
74           if($('.item-box').length < 7 ){
75
76             $("#upload-sign").show();
77           } 
78
79            });
80
81         if($('.item-box').length  == 7){
82
83           $("#upload-sign").hide();
84         }  
85     }, //success end
86     error: function(data){
87
88     }
89   }) //ajax end
90
91
92
93 }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: