给删除图标设置自定义标签 remarkId =${remark.id} 可以获取id name=“deleteA"
var id=$(this).attr("remarkId");
给元素扩展属性:html页面是可扩展的标记语言,可以给指定的标签任意扩展属性,只要属性名符合标识符的命名规则即可。
两个目的:
1)使用标签保存数据:
如果是表单组件标签,优先使用value属性,只有value不方便使用时,使用自定义属性;
如果不是表单组件标签,不推荐使用value,推荐使用自定义属性。
2)定位标签:
优先考虑id属性,其次考虑name属性,只有id和name属性都不方便使用时,才考虑使用自定义属性。
//给所有的"删除"图标添加单击事件
$("#remarkDivList").on("click","a[name='deleteA']",function () {
//收集参数
var id=$(this).attr("remarkId");
//发送请求
$.ajax({
url:'workbench/activity/deleteActivityRemarkById.do',
data:{
id:id
},
type:'post',
dataType:'json',
success:function (data) {
if(data.code=="1"){
//刷新备注列表
$("#div_"+id).remove();
}else{
//提示信息
alert(data.message);
}
}
});
});
市场备注列表中 <div id="div_${remark.id}" class="remarkDiv" style="height: 60px;">
给每一个市场活动备注信息设置一个div_id 的标识 id
初始化更新列表的时候设置和保存信息的时候追加设置 id="div_${remark.id}
mapper层
int deleteActivityRemarkById(String id);<delete id="deleteActivityRemarkById" parameterType="string"> delete from tbl_activity_remark where id=#{id} </delete>
service层
int deleteActivityRemarkById(String id);public int deleteActivityRemarkById(String id) { return activityRemarkMapper.deleteActivityRemarkById(id); }
controller层
@RequestMapping("workbench/activity/deleteActivityRemarkById.do") @ResponseBody public Object deleteActivityRemarkById(String id){ ReturnObject returnObject=new ReturnObject(); try{ //调用service层方法 删除备注 int ret=activityRemarkService.deleteActivityRemarkById(id); if (ret>0){ returnObject.setCode("1"); }else { returnObject.setCode("0"); returnObject.setMessage("删除失败"); } }catch (Exception e){ returnObject.setCode("0"); returnObject.setMessage("删除失败"); } return returnObject; }
修改备注信息
//给所有市场活动备注后边的"修改"图标添加单击事件
$("#remarkDivList").on("click","a[name='editA']",function () {
//获取备注的id和noteContent
var id=$(this).attr("remarkId");
var noteCotent=$("#div_"+id+" h5").text();
//把备注的id和noteContent写到修改备注的模态窗口中
$("#edit-id").val(id);
$("#edit-noteContent").val(noteCotent);
//弹出修改市场活动备注的模态窗口
$("#editRemarkModal").modal("show");
});
模态窗口弹出 点击更新
//给“更新”按钮添加单击事件
$("#updateRemarkBtn").click(function () {
//收集参数
var id=$("#edit-id").val();
var noteContent=$.trim($("#edit-noteContent").val());
//表单验证
if(noteContent==""){
alert("备注内容不能为空");
return;
}
//发送请求
$.ajax({
url:'workbench/activity/saveEditActivityRemark.do',
data:{
id:id,
noteContent:noteContent
},
type:'post',
dataType:'json',
success:function (data) {
if(data.code=="1"){
//关闭模态窗口
$("#editRemarkModal").modal("hide");
//刷新备注列表
$("#div_"+data.retData.id+" h5").text(data.retData.noteContent);
$("#div_"+data.retData.id+" small").text(" "+data.retData.editTime+" 由${sessionScope.sessionUser.name}修改");
}else{
//提示信息
alert(data.message);
//模态窗口不关闭
$("#editRemarkModal").modal("show");
}
}
});
});
mapper层
int updateActivityRemark(ActivityRemark remark);<update id="updateActivityRemark" parameterType="com.bjpowernode.crm.workbench.domain.ActivityRemark"> update tbl_activity_remark set note_content=#{noteContent},edit_time=#{editTime}, edit_by=#{editBy},edit_flag=#{editFlag} where id=#{id} </update>
service层
int updateActivityRemark(ActivityRemark remark);public int updateActivityRemark(ActivityRemark remark) { return activityRemarkMapper.updateActivityRemark(remark); }
controller层
@RequestMapping("/workbench/activity/saveEditActivityRemark.do") public Object saveEditActivityRemark(ActivityRemark remark,HttpSession session){ User user= (User) session.getAttribute("user"); //封装参数 remark.setEditTime(DateUtils.formateDateTime()); remark.setEditBy(user.getId()); remark.setEditFlag("1"); ReturnObject returnObject=new ReturnObject(); try{ int ret=activityRemarkService.updateActivityRemark(remark); if(ret>0){ returnObject.setCode("1"); returnObject.setRetDate(remark); }else { returnObject.setCode("0"); returnObject.setMessage("系统忙,请稍后"); } }catch (Exception e){ returnObject.setCode("0"); returnObject.setMessage("系统忙,请稍后"); } return returnObject; }