diff --git a/application/admin/view/addon/index.html b/application/admin/view/addon/index.html
index 83ec73f..bef0876 100644
--- a/application/admin/view/addon/index.html
+++ b/application/admin/view/addon/index.html
@@ -77,7 +77,7 @@
                 <div class="widget-body no-padding">
                     <div id="toolbar" class="toolbar">
                         {:build_toolbar('refresh')}
-                        <button type="button" id="faupload-addon" class="btn btn-danger faupload" data-url="addon/local" data-mimetype="application/zip" data-multiple="false"><i class="fa fa-upload"></i>
+                        <button type="button" id="faupload-addon" class="btn btn-danger faupload" data-url="addon/local" data-mimetype="zip" data-multiple="false"><i class="fa fa-upload"></i>
                             {:__('Offline install')}
                         </button>
                         {if $Think.config.fastadmin.api_url}
diff --git a/application/admin/view/general/profile/index.html b/application/admin/view/general/profile/index.html
index d68f2ac..db2a2c2 100644
--- a/application/admin/view/general/profile/index.html
+++ b/application/admin/view/general/profile/index.html
@@ -51,9 +51,9 @@
                     <div class="box-body box-profile">
 
                         <div class="profile-avatar-container">
-                            <img class="profile-user-img img-responsive img-circle faupload" src="{$admin.avatar|cdnurl|htmlentities}" alt="">
+                            <img class="profile-user-img img-responsive img-circle" src="{$admin.avatar|cdnurl|htmlentities}" alt="">
                             <div class="profile-avatar-text img-circle">{:__('Click to edit')}</div>
-                            <button id="faupload-avatar" class="faupload" data-input-id="c-avatar"><i class="fa fa-upload"></i> {:__('Upload')}</button>
+                            <button type="button" id="faupload-avatar" class="faupload" data-input-id="c-avatar"><i class="fa fa-upload"></i> {:__('Upload')}</button>
                         </div>
 
                         <h3 class="profile-username text-center">{$admin.username|htmlentities}</h3>
diff --git a/application/api/controller/Common.php b/application/api/controller/Common.php
index aedcc61..98d2a18 100644
--- a/application/api/controller/Common.php
+++ b/application/api/controller/Common.php
@@ -69,7 +69,7 @@ class Common extends Api
                 } catch (UploadException $e) {
                     $this->error($e->getMessage());
                 }
-                $this->success(__('Uploaded successful'), '', ['url' => $attachment->url]);
+                $this->success(__('Uploaded successful'), ['url' => $attachment->url]);
             } elseif ($method == 'clean') {
                 //删除冗余的分片文件
                 try {
@@ -102,7 +102,7 @@ class Common extends Api
                 $this->error($e->getMessage());
             }
 
-            $this->success(__('Uploaded successful'), '', ['url' => $attachment->url]);
+            $this->success(__('Uploaded successful'), ['url' => $attachment->url]);
         }
 
     }
diff --git a/public/assets/js/frontend/user.js b/public/assets/js/frontend/user.js
index d308083..ac26685 100755
--- a/public/assets/js/frontend/user.js
+++ b/public/assets/js/frontend/user.js
@@ -77,7 +77,7 @@ define(['jquery', 'bootstrap', 'frontend', 'form', 'template'], function ($, und
             $("#faupload-avatar").data("upload-success", function (data) {
                 var url = Fast.api.cdnurl(data.url);
                 $(".profile-user-img").prop("src", url);
-                Toastr.success(__('Upload successful'));
+                Toastr.success(__('Uploaded successful'));
             });
             Form.api.bindevent($("#profile-form"));
             $(document).on("click", ".btn-change", function () {
diff --git a/public/assets/js/require-backend.min.js b/public/assets/js/require-backend.min.js
index d5d17ab..9206dd7 100644
--- a/public/assets/js/require-backend.min.js
+++ b/public/assets/js/require-backend.min.js
@@ -7387,7 +7387,7 @@ define('upload',['jquery', 'bootstrap', 'dropzone', 'template'], function ($, un
                         }
                         $(this).attr("initialized", true);
                         var that = this;
-                        var id = $(this).prop("id");
+                        var id = $(this).prop("id") || $(this).prop("name") || Dropzone.uuidv4();
                         var url = $(this).data("url");
                         var maxsize = $(this).data("maxsize");
                         var maxcount = $(this).data("maxcount");
@@ -7431,12 +7431,12 @@ define('upload',['jquery', 'bootstrap', 'dropzone', 'template'], function ($, un
                             return bytes / Math.pow(1024, 2);
                         }(maxsize));
 
-                        var options = $("#" + id).data() || {};
+                        var options = $(this).data() || {};
                         delete options.success;
                         delete options.url;
                         multipart = $.isArray(multipart) ? {} : multipart;
 
-                        Upload.list[id] = new Dropzone("#" + id, $.extend({
+                        Upload.list[id] = new Dropzone(this, $.extend({
                             url: url,
                             params: function (files, xhr, chunk) {
                                 var params = multipart;
diff --git a/public/assets/js/require-upload.js b/public/assets/js/require-upload.js
index 828023e..8751804 100755
--- a/public/assets/js/require-upload.js
+++ b/public/assets/js/require-upload.js
@@ -125,7 +125,7 @@ define(['jquery', 'bootstrap', 'dropzone', 'template'], function ($, undefined, 
                         }
                         $(this).attr("initialized", true);
                         var that = this;
-                        var id = $(this).prop("id");
+                        var id = $(this).prop("id") || $(this).prop("name") || Dropzone.uuidv4();
                         var url = $(this).data("url");
                         var maxsize = $(this).data("maxsize");
                         var maxcount = $(this).data("maxcount");
@@ -169,12 +169,12 @@ define(['jquery', 'bootstrap', 'dropzone', 'template'], function ($, undefined, 
                             return bytes / Math.pow(1024, 2);
                         }(maxsize));
 
-                        var options = $("#" + id).data() || {};
+                        var options = $(this).data() || {};
                         delete options.success;
                         delete options.url;
                         multipart = $.isArray(multipart) ? {} : multipart;
 
-                        Upload.list[id] = new Dropzone("#" + id, $.extend({
+                        Upload.list[id] = new Dropzone(this, $.extend({
                             url: url,
                             params: function (files, xhr, chunk) {
                                 var params = multipart;