回显html输入type = file中的值

时间:2014-12-08 08:53:05

标签: php jquery html codeigniter

我有一个html表单来上传文件。上传后,如果用户需要编辑详细信息,则表单将再次显示,并从数据库中填充数据值。我怎么可能在input type = file中显示上传文件的先前值。

更具体地说,这是我的表格:

<form>
  <div class="form-row">
    <input id="equipmentname" type="text" value="<?php if(isset($equipment)){ echo $equipment[0]->equipmentname;} ?>" name="equipmentname" />
  </div>

  <div class="form-row">
    <input type="file" id="userfile" name="userfile" size="20" onChange="getImage(event);" />
  </div>

  <div class="form-row action_btnContainer">
    <input id="createEquipmentBtnCreate" name="file_upload" type="submit" value="Add" class="btnCreate" onclick="checkEquipmentCreateForm(event);" /> 
    <input id="createEquipmentBtnCancel" type="button" value="Cancel" class="btnCancel" onclick="closeSitePopUp('EquipmentCreateForm');" />
  </div>
</form>

就像我在其文本字段中回显'设备名'我怎么可能在其各自的输入字段中显示先前的上传文件值。欢迎任何建议。感谢。

1 个答案:

答案 0 :(得分:1)

您无法预填充文件表单字段。

一个可能的解决方案是有一个额外的字段或一点html到&#34;显示&#34;价值 例如,假设您的文件上传是图像,并且您要在数据库中存储路径,请添加图像元素以显示图像。

<form>
  <div class="form-row">
    <input id="equipmentname" type="text" value="<?php if(isset($equipment)){ echo $equipment[0]->equipmentname;} ?>" name="equipmentname" />
  </div>

  <div class="form-row">
    <input type="file" id="userfile" name="userfile" size="20" onChange="getImage(event);" />
  </div>
  <?php 
  if (strlen($equipment[0]->imagePath) > 0) {
  ?>
  <img src="<?php $equipment[0]->imagePath; ?>" alt="image preview" />
  <?php
  }
  ?>

  <div class="form-row action_btnContainer">
    <input id="createEquipmentBtnCreate" name="file_upload" type="submit" value="Add" class="btnCreate" onclick="checkEquipmentCreateForm(event);" /> 
    <input id="createEquipmentBtnCancel" type="button" value="Cancel" class="btnCancel" onclick="closeSitePopUp('EquipmentCreateForm');" />
  </div>
</form>

如果上传是一个doc文件,那么你可以显示一个代表一个doc文件的缩略图,有很多。