将响应数据追加到输入表单

时间:2019-02-15 09:28:24

标签: javascript jquery

初学者,请耐心等待。 我有一个文件放置区,当一个文件被删除时,它会通过multer缓存在内存中以读取元数据,然后以模态形式预填充表单。到目前为止,此方法按预期方式工作,只是打开的Modal具有文件输入,而我尝试将文件从dropzone附加到此输入/表单,但从未成功。如何将文件传递为模态形式?

我尝试过:$('#Bild')。val(response.bild);没有成功...

这是api / filemeta(简称,仅供参考):

response = {
    datum: createDate,
    uhrzeit: createTime,
    gewaesser: wtr,
    bild: req.file,
}
res.send(response);

这是放置区:

$("#uploadfile").click(function() {
  $("#file").click();
});

$("#file").change(function() {
  var fd = new FormData();
  var files = $('#file')[0].files[0];
  fd.append('file', files);
  $.ajax({
    type: "POST",
    url: '/api/filemeta',
    data: fd,
    processData: false,
    contentType: false,
    success: function(response) {
      //alert(response);
      $('#id_datum').val(response.datum);
      $('#id_uhrzeit').val(response.uhrzeit);
      $('#id_gewaesser').val(response.gewaesser);
      $("#addNew").modal('show');
    }
  });
});
This is the Modal (shortened):

<div class="modal fade" id="addNew" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
  <form id="faenge-data" method="post" enctype="multipart/form-data">
    <input id="id_picture" type="file" name="Bild" accept="image/*" multiple="multiple" />
  </form>
</div>
<div class="modal-footer">
  <button type="submit" class="menuebuttons">Speichern</button>
  <button type="button" class="cancelbtn" data-dismiss="modal" aria-label="Close">Abbrechen</button>
</div>

1 个答案:

答案 0 :(得分:0)

由于安全问题,您无法以编程方式设置HTML文件字段的值。请参阅此Dynamically set value of a file input

但是,由于您已经将文件上传到服务器,因此可以在POST响应中返回文件的URL / ID,并将其用于下一个表单(模式)提交