多附件编辑

JSP:

<tr>
  <td width="15%" class="table_span"><sr:message bundle="database" key="bidProject.affix"/></td>
  <td colspan="3" width="35%" class="relative">
  <c:forEach items="${srModel.fileIds}" var="item" varStatus="s">
    <div>
      <a id="deleteId${s.index}" href="DownloadServlet?id=<c:out value="${item}"/>"><c:out value="${srModel.fileNames[s.index]}"/></a>
      <button type="button" id="deleteButton${s.index}" indexnumber="${s.index}" class="btn btn-small btn-danger deleteBtn" deleteFileId="${item}" >
        <sr:message bundle="common" key="page.button.delete"/>
      </button>
    </div>
  </c:forEach>
  <div>
    <input id="tenderFileUrls" name="v(affix@submitProjectSpModel#String)" value="${srModel.bidProject.affix}" type="hidden">
    <a id="tenderFileBtn" href="#upload"> 选择要上传的文件 </a>
    <!-- 文件上传队列 -->
    <ul id="tenderFileQueue"> 
    </ul>
  </div>
</tr>
JS:

var flashupload = require('flashupload');
flashupload('#tenderFileBtn', '#tenderFileQueue',{ 
      urlsInputName:"v(affix@submitProjectSpModel#String)",
      restoreHook:"#tenderFileUploaderRestore",
      authConfig: {  
        max:[1, "最多上传{max}个文件!"],        
        maxSize:[1000, "文件大小为{size},文件太大!"],   
        allowExts:[            
          {"desc":"JPG,JPEG,PNG,GIF,BMP", "ext":"*.jpg;*.jpeg;*.png;*.gif;*.bmp"},            
          "不支持{ext}格式的文件上传!" ]    
      }
});
附件删除JS:

	$(".deleteBtn").click(function(e) {
		var fileIds = $("input[name='v(affix@submitProjectSpModel#String)']").val();
	    var deleteFileId = $(this).attr("deleteFileId");
	    var index = $(this).attr("indexnumber");
	    $("input[name='v(affix@submitProjectSpModel#String)']").val(deleteFile(fileIds, deleteFileId));
	    $("#deleteId" + index).remove();
	    $("#deleteButton" + index).remove();
	}); 
	
	function deleteFile(fileIds, deleteFileId) {
		var deleteIndex = fileIds.indexOf(deleteFileId);
		var result;
	  	if(deleteFileId != -1) {
	  		if(deleteIndex == 0) {
	  			if(deleteIndex + deleteFileId.length + 1 > fileIds.length) {
	  				result = "";
	  			} else {
	  				result = fileIds.replace(deleteFileId + ",", "");
	  			}
	  		} else {
	  			result = fileIds.replace("," + deleteFileId, "");
	  		}
	  	}
	  	return result;
	}
Service:

		//得到各个附件的名称
		if(!StringUtil.isEmpty(srModel.getBidProject().getAffix())) {
			logger.info("获取附件名称:" + spModel.getId());
			try {
				String[] fileIds = StringUtils.split(srModel.getBidProject().getAffix(), ",");
				String[] fileNames = new String[fileIds.length];
				for(int i = 0; i < fileIds.length; i++) {
					fileNames[i] = FileUtil.getNameById(fileIds[i]);
				}
				srModel.setFileNames(fileNames);
				srModel.setFileIds(fileIds);
			} catch (Exception e) {
				// TODO Auto-generated catch block
				logger.info("获取附件名称失败:" + e.getMessage());
				e.printStackTrace();
			}
		}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值