[英]Jquery file upload in rails on button click
我正在使用jquery-fileupload插件( https://github.com/tors/jquery-fileupload-rails )在Rails應用程序中顯示文件上傳進度。 下面的代碼可以正常工作。
在我的index.html.erb中,我有
<script id="template-upload" type="text/x-tmpl">
<div class="upload">
{%=o.name%}
<div class="progress"><div class="bar" style="width: 0%;"></div></div>
</div>
</script>
在我的項目js.coffee文件中
$('#import_form').fileupload
dataType: "json"
add: (e, data) ->
data.context = $(tmpl("template-upload", data.files[0]))
$('#import_form').append(data.context)
data.submit()
progress: (e, data) ->
if data.context
progress = parseInt(data.loaded / data.total * 100, 10)
data.context.find('.bar').css('width', progress + '%')
但是我希望當我單擊ID為import_button的按鈕而不是自動單擊時開始上載。 我該如何實現?
我嘗試執行以下操作,但收到錯誤消息“數據未定義”
$('#import_form').fileupload
dataType: "json"
add: (e, data) ->
data.context = $(tmpl("template-upload", data.files[0]))
$('#import_form').append(data.context)
$("#import_button").off("click").on "click", ->
data.submit()
progress: (e, data) ->
if data.context
progress = parseInt(data.loaded / data.total * 100, 10)
data.context.find('.bar').css('width', progress + '%')
請幫忙謝謝
一個特殊的回調是add
回調,因為它為data參數提供了一個commit方法,它將開始文件上傳:
$('#fileupload').fileupload({
add: function (e, data) {
data.submit();
}
});
因此,如果您不想自動開始上傳,請使用add
回調,但不要調用Submit方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.