[oldboy-django][1初识django]阻止默认事件发生 + ajax + 模态编辑对话框
4 阻止默认事件发生 a 阻止a标签默认事件发生方法 <a href="http://www.baidu.com" onclick="modalEdit();">点击</a> 点击上面的a标签会有两个事件: modalEdit 以及 跳转到百度首页, 优先级高的modalEdit() 如果想阻止跳转到百度首页事件发生,需改成如下: 1 标签内添加return <a href="http://www.baidu.com" onclick=" return modalEdit();">点击</a> 2 事件modalEdit 添加return False function modalEdit(){ .... return false; } b 阻止form表单中submit默认事件发生方法 5 ajax+对话框(单表class) 点击编辑后的处理步骤,编辑按钮绑定事件 a.获取当前编辑班级的全部信息 -- 前端 - 找父亲parent(),找父亲的前面两个标签prevAll() b.弹出对话框并显示默认信息 -- 前端 - removeClass("hide") - val(id) #id的input输入框隐藏 - val(title) c.点击提交按钮将数据发送到后台 -- ajax - $.ajax({ url: '/modal_edit_class/', type: 'POST', data: {'nid': nid, 'title': title}, success: function(){}}) d.后台异常处理(插入数据库),将字典json处理为字符串,返回HttpResponse() -- 服务器 - ret = {'status': True, 'msg': None} - try {更新数据库操作} - return HttpResponse(json.loads(ret)) e.前端接收字符串,反json处理,判断并做不同操作 -- ajax - success: function(){} -- 成功,刷新当前页面 location.reload() -- 失败,显示失败信息 - 反序列化 -- JSON.parse(string) - 前端序列化 -- JSON.stringify(字典)