BlueImp jQuery文件上传 - 为每个文件添加可自定义的名称字段

时间:2014-12-28 19:36:39

标签: jquery ruby-on-rails paperclip blueimp

我在blueimpe jquery中添加名字段多文件上传时遇到了问题。

始终采用名称文本字段的最后指定值。如何解决这个问题?

<!-- The template to display files available for upload -->
<script id="template-upload" type="text/x-tmpl">
  {% for (var i=0, file; file=o.files[i]; i++) { %}
  <tr class="template-upload">
    <td class="preview"><span class="fade"></span></td>
    <td class="name"><span>{%=file.name%}</span></td>

    <td class="image_name"><span><input type="text" name="image[name]"value="{%= file.name.split('/').pop().split('.').shift()%}" required/></span></td>
    <td class="size"><span>{%=o.formatFileSize(file.size)%}</span></td>
    {% if (file.error) { %}
    <td class="error" colspan="2"><span class="label label-important">{%=locale.fileupload.error%}</span> {%=locale.fileupload.errors[file.error] || file.error%}</td>
    {% } else if (o.files.valid && !i) { %}
    <td>

    </td>
    <td class="start">{% if (!o.options.autoUpload) { %}
      <button>

        <span>{%="Upload"%}</span>
      </button>
      {% } %}</td>
    {% } else { %}
    <td colspan="2"></td>
    {% } %}
    <td class="cancel">{% if (!i) { %}
      <button >

        <span>{%="Remove"%}</span>
      </button>
      {% } %}</td>
  </tr>
  {% } %}
</script>

我已经尝试了所有方法。

1 个答案:

答案 0 :(得分:2)

在提交回调中添加此内容

$('#fileupload').bind('fileuploadsubmit', function (e, data) {
    var inputs = data.context.find(':input');
    if (inputs.filter('[required][value=""]').first().focus().length) {
        return false;
    }
    data.formData = inputs.serializeArray();
 });

.first()将获取第一个输入值。