Я использую плагин Blueimp Jquery FileUpload с Rails 3.
Я хочу отправить сообщение об ошибке с сервера на клиент.
Действие сервера:
# POST /templates
def create
file_list = {
:error => "some error text"
}
respond_to do |format|
format.json { render :json => file_list }
end
end
Мой клиент:
$('#fileupload').fileupload({
autoUpload: true,
dropZone: null,
add: function (e, data) {
data.submit();
}
});
$('#fileupload').bind('fileuploaddone', function (e, data) {
});
Также у меня есть такой html:
<form method="post" enctype="multipart/form-data" action="/admin/templates?locale=uk" accept-charset="UTF-8">
<script id="template-upload" type="text/x-jquery-tmpl">
<tr class="template-upload{{if error}} ui-state-error{{/if}}">
{{if error}}
<td class="ext"></td>
<td class="code"></td>
<td class="error" colspan="4">Помилка:
{{if error === 'maxFileSize'}}text
{{else error === 'minFileSize'}}text
{{else error === 'acceptFileTypes'}}text
{{else error === 'maxNumberOfFiles'}}text
{{else error === 'errorFileFormat'}}text
{{else}}${error}
{{/if}}
</td>
<td class="cancel"><button>Відмінити завантаження</button></td>
{{else}}
<td class="ext"></td>
<td class="code"></td>
<td class="name"></td>
<td class="size">${sizef}</td>
<td class="link_setup_template">${link_setup_template}</td>
<td class="link_show_template">${link_show_template}</td>
<td class="progress"><div></div></td>
<td class="start"><button>Start</button></td>
{{/if}}
</tr>
</script>
<script id="template-download" type="text/x-jquery-tmpl">
<tr class="template-download{{if error}} ui-state-error{{/if}}">
{{if error}}
<td></td>
<td class="ext">${ext}</td>
<td class="code">s${code}</td>
<td class="name" colspan="2">Error:
{{if error === 1}}text
{{else error === 2}}text
{{else error === 3}}text
{{else error === 4}}text
{{else error === 5}}text
{{else error === 6}}text
{{else error === 7}}text
{{else error === 'maxFileSize'}}text
{{else error === 'minFileSize'}}text
{{else error === 'acceptFileTypes'}}text
{{else error === 'maxNumberOfFiles'}}text
{{else error === 'uploadedBytes'}}text
{{else error === 'emptyResult'}}text
{{else error === 'errorFileFormat'}}text
{{else}}${error}
{{/if}}
</td>
<td class="size">${sizef}</td>
<td class="link_setup_template">${link_setup_template}</td>
<td class="link_show_template">${link_show_template}</td>
{{else}}
<td class="ext">${ext}</td>
<td class="code">${code}</td>
<td class="name">
<a href="${url}"{{if thumbnail_url}} target="_blank"{{/if}}>${name}</a>
</td>
<td class="size">${sizef}</td>
<td class="link_setup_template">${link_setup_template}</td>
<td class="link_show_template">${link_show_template}</td>
{{/if}}
<td class="delete">
<button data-type="${delete_type}" data-url="${delete_url}">delete</button>
</td>
</tr>
</script>
</form>
Но мой объект json на стороне сервера с атрибутом error не вызывает поведение ошибки на клиенте.
Заранее спасибо.