图片上传4-bug修复

本文探讨了前端开发中处理图片显示时的url有效性检查与ID保存逻辑优化,包括图片加载异常处理及ID传递策略,旨在提升用户体验与系统稳定性。

bug1:显示图片的时候,需要判断url是否为空

   <#if photo.url != null>
<img
id="${photo.id}-img" src="${zhaorongbaoFileUrl}/${photo.url}" path="${photo.url}"
height="200px">

<#else>
<img
id="${photo.id}-img" src="" path=""
height="200px">
</#if>

  如果不判断,url为空的时候,图片找不到,一个×很影响心情。


bug2:保存的时候,获得图片的id,需要判断newid是否为null。如果不为null,用newid,如果为null,使用id。

也就是说,传给后端的id存在3种情况:

a.增加按钮,默认生成的是 当前时间的毫秒数

b.默认列表显示,后台数据库中的id

c.增加按钮之后,上传了图片,从后台数据库获得的

function bindSaveEvent(){
console.log("bindSaveEvent");
$("#save").on("click", function() {
var trs=$(".tr");
var photos = new Array();
$.each(trs,function(i,n){
var tr = $(trs[i]);
var photo ={};
//newid是数据库中的id
var id=tr.attr("id");
var newid=tr.attr("newid");
photo.id=null;
//优先使用newid
if(newid != null){
    photo.id=newid;
}else if(id != null){
  photo.id=id;
}

}

bug3:PhotoBean 的toAdd可能存在。当前端增加一条记录,但是不上传图片的时候,这条记录仍然是合法的,这个时候就需要在数据库中插入一条记录了。

class PhotoBean {
// 将要删除的,通常是数据库中的
public List<Photo> toDelete;
// 将要更新的,都在数据库中,部分最新内容来源于web前端
public List<Photo> toUpdate;
// 将要增加的,由于上传图片的时候都已经插入了,这个时候可以忽略了,但是存在增加一条记录,但不上传图片的情况
public List<Photo> toAdd;
}

转载于:https://www.cnblogs.com/qitian1/p/6462652.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值