note

xiaoxiao2021-02-28  105

笔记的删除功能

发送Ajax请求

绑定事件:监听alert页面创建按钮(给按钮增加ID:deleteNote)

$("#can").on("click","#deleteNote",function(){});

获取参数:笔记ID

var $li=$("#note_ul a.checked").parent(); var noteId=$li.data("noteId");

发送请求: /note/delete.do

服务器处理

DeleteNoteController.execute(String noteId)

NoteService.deleteNote(String noteId);

NoteDao.update(String noteId)

Mapper:

<update id="update" parameterType="String"> update cn_note set cn_note_status_id='2' where cn_note_id=#{id} </update>

Ajax回调处理

success:

删除笔记列表中的li元素

提示:笔记删除成功

success:function(result){ if(result.state==0){ $li.remove(); alert("删除笔记成功"); } }

error:提示笔记删除失败

----------------------------------------------------------------------------------------

代码如下:

----------------------------------------------------------------------------------------

Dao接口:

//删除笔记(本质是修改cn_note_status_id =2) public int update(String noteId);

返回int值,若为1,则表示更新成功

----------------------------------------------------------------------------------------

映射文件:

<!-- 删除笔记(本质是修改cn_note_status_id =2) --> <update id="update" parameterType="string"> update cn_note set cn_note_status_id = '2' where cn_note_id = #{id} </update>

----------------------------------------------------------------------------------------

业务层接口:

//删除笔记(本质是修改cn_note_status_id =2) public NoteResult<Object> deleteNote(String noteId);

----------------------------------------------------------------------------------------

业务层实现类:

//删除笔记(本质是修改cn_note_status_id =2) public NoteResult<Object> deleteNote(String noteId) { NoteResult<Object> result = new NoteResult<Object>(); int rows = dao.update(noteId); if(rows == 0){ result.setStatus(1); result.setMsg("删除笔记失败"); return result; } result.setStatus(0); result.setMsg("删除笔记成功"); return result; }

----------------------------------------------------------------------------------------

控制层Controller:

package cn.tedu.cloud_note.controller; import javax.annotation.Resource; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import cn.tedu.cloud_note.service.NoteService; import cn.tedu.cloud_note.util.NoteResult; @Controller @RequestMapping("/note") public class DeleteNoteController { @Resource(name="noteService") private NoteService service; @RequestMapping("/delete.do") @ResponseBody public NoteResult<Object> execute(String noteId){ NoteResult<Object> result = service.deleteNote(noteId); return result; } }

----------------------------------------------------------------------------------------

HTML部分代码:

//笔记下拉按钮的删除按钮弹出对话框 $("#note_ul").on("click",".btn_delete",alertDeleteNoteWindow); //功能(单击删除按钮,弹出删除页面成功后弹窗提示删除成功) $("#can").on("click","#deleteNote",deleteNote);

----------------------------------------------------------------------------------------

引用的JS代码:

//弹出删除笔记对话框 function alertDeleteNoteWindow(){ $("#can").load("alert/alert_delete_note.html"); $(".opacity_bg").show(); }

-----------------------------------------------------------

//删除笔记 function deleteNote(){ //获取笔记ID var $li = $("#note_ul a[class='checked']").parent(); var noteId = $li.data("noteId"); //console.log(noteId); //发送ajax请求 $.ajax({ url:path + "/note/delete.do", type:"post", data:{"noteId":noteId}, dataType:"json", success:function(result){ if(result.status == 0){ console.log("OOKK"); //将笔记列表中的笔记删除 $li.remove(); alert(result.msg); } }, error:function(){alert("删除笔记失败");} }); }

测试结果:

 

转载请注明原文地址: https://www.6miu.com/read-23101.html

最新回复(0)